Оператор UPDATE и представление

Оценить
(0 голоса)

Представление может быть использовано с оператором update, как если бы этот оператор применялся к базовой таблице. Когда представление используется для модификации строк, содержимое лежащей в основе базовой таблицы изменяется фактически.

В примере 11.14 создается представление, которое затем используется для изменения таблицы workson.

Оператор UPDATE и представление

 

Вы можете рассматривать обновление представления в примере 11.14, как если бы оператор update был преобразован к следующему эквивалентному оператору:

update works_on set job = null where job = 'Manager' and project_no = 'pi'

Опция with check option имеет то же самое логическое значение для оператора update, что и для оператора insert. В примере 11.15 показано использование опции with check option в операторе update.

 

Оператор UPDATE и представление

 

В примере 11.15 Database Engine проверяет, будет ли измененное значение столбца budget давать истину в условии предложения where оператора select. Эта попытка изменения будет неудачной, потому что условие не выполняется - значение 93 000 не является большим, чем значение 100 000.

Изменение столбцов, лежащих в основе представления таблиц, нельзя выполнить, если соответствующее представление содержит одну из следующих возможностей:

♦ предложение from в определении представления включает две или более таблиц, и список столбцов содержит столбцы более чем из одной таблицы;

♦ столбец в представлении наследуется из агрегатной функции;

♦ оператор select в представлении содержит предложение group by или опцию distinct;

♦ столбец в представлении наследуется от константы или выражения.

В примере 11.16 показано представление, которое не может быть использовано для изменения значений строк в базовой таблице представления.

 

Оператор UPDATE и представление

 

Представление vukpound в примере 11.16 не может использоваться с оператором update (так же, как и с оператором insert), потому что столбец budgetinpounds является вычисляемым с помощью арифметического выражения и не представляет оригинального столбца лежащей в основе представления таблицы.


Оператор DELETE и представление
Индексированные представления
Создание индексированного представления
Изменение структуры индексированного представления
Редактирование информации, связанной с индексированными представлениями

Добавить комментарий


Защитный код
Обновить

© 2018 www.serversql.ru. Все права защищены.