Махеш не зовсім коректний, коли він пропонує, що ви не можете змінювати дані у представленні. Так з погляду Патріка
CREATE View vw_user_profile AS
Select A.user_id, B.profile_description
FROM tbl_user A left join tbl_profile B on A.user_id = b.user_id
Я МОЖУ оновити дані ... як приклад я можу зробити будь-яке з цих ...
Update vw_user_profile Set profile_description='Manager' where user_id=4
або
Update tbl_profile Set profile_description='Manager' where user_id=4
Ви не можете ВСТАВИТИ цей погляд, оскільки не всі поля в таблиці присутні, і я припускаю, що PROFILE_ID є первинним ключем і не може бути NULL. Однак іноді ви можете ВСТАВИТИ у подання ...
Я створив подання на існуючу таблицю, використовуючи ...
Create View Junk as SELECT * from [TableName]
ТОДІ
Insert into junk (Code,name) values
('glyn','Glyn Roberts'),
('Mary','Maryann Roberts')
і
DELETE from Junk Where ID>4
І INSERT, і DELETE працювали в цій справі
Очевидно, що ви не можете оновлювати жодні поля, зведені або обчислені, але будь-який вид, який є просто прямим видом, повинен бути оновлений.
Якщо представлення містить більше однієї таблиці, ви не можете вставити або видалити, але якщо представлення є лише підмножиною однієї таблиці, тоді ви зазвичай можете.