我目前正在阅读Microsoft的有关视图的文档,并且对阅读的“ with check option”感到有些困惑。文档中没有提供任何示例。有人可以让我举一个简单的例子吗?通过示例我更容易理解。
CHECK OPTION强制对视图执行的所有数据修改语句都遵循select_statement中设置的条件。通过视图修改行时,WITH CHECK OPTION可确保在提交修改后,数据仍可通过视图看到。
这并不意味着您无法通过视图进行此类更新,因为视图中的任何where语句将不再与该行匹配,因此该行将从视图中消失。
where
看法:
create view xxx as select * from table where status = 1
使用表更新(确定):
update table set status = 2 where id = 3
使用视图更新(不正常):
update xxx set status = 2 where id = 3
如果执行此操作,则该行将消失