视图中with check option的作用是什么?

create   view   IS_student  
as  
  select  sno,sname,sage,sdept 
  from    student  
  where   sdept='IS'  
with   check   option;  

使用以下操作就不行

insert  
into   IS_student  
values('95100','李娜',12,'MA');

因为插入记录的院系是'MA',不是'IS'
with check option保证了通过视图进行的修改,必须也能通过该视图看到修改后的结果。
修改的结目标和结果都只在视图上呈现,这样不会影响其他视图。
所以你插入,那么插入这条记录在刷新视图后必须可以看到;
如果修改,修改完的结果也必须能通过该视图看到;
如果删除,当然只能删除视图里有显示的记录。

而你插入的记录不符合sdept='IS’条件,所以插入不进去。

你可能感兴趣的:(#,MySQL学习,linux,运维,服务器)