视图学习第一章,初步接触视图,并对with check option 的理解

视图学习第一章,初步接触视图,并对with check option 的理解
1.sql语句创建视图
create view [项目_视图名]
2.sql语句删除视图
drop view [项目_项目名]

with check option的应用
在基于employee表下
视图学习第一章,初步接触视图,并对with check option 的理解_第1张图片
创建两种不同视图,一者带with check option ,一者不带with check option
create view view_basic as
select Name,Gender,RankID from Employee
where Name=‘张哲’

create view view_variant as
select Name,Gender,RankID from Employee
where Name=‘张哲’
with check option

用以验证,体验with check option的作用
以上查看,学习的源资料
视图学习第一章,初步接触视图,并对with check option 的理解_第2张图片
在学习过程中,没理解该含义,故进行了以下测试
视图学习第一章,初步接触视图,并对with check option 的理解_第3张图片
Insert
插入相同数据的情况下
有with check option的:当插入的语句不符合where 条件子句时,则会插入失败
无with check option的:当插入的语句不符合where 条件子句时,仍能插入成功

视图学习第一章,初步接触视图,并对with check option 的理解_第4张图片
Update
修改数据的情况下
若视图中无这项数据,则有无with check option都不会通过视图修改成功。
即视图如果没有where 条件下的数据,即便基表里有where条件下的数据,仍不会通过视图修改到基表中的数据
则可以理解为,用Update通过视图修改数据,若视图没有这个数据的情况下,则不会对基表中的数据造成影响

故,在目前我今日第一天的学习中的总结是这样的:
with check option的作用在于通过视图新增基表数据时,起到限制作用。即禁止通过视图增加不符合where子句的数据。

以上是今日自学成果,公布在博客上,希望有大牛指教,这个理解是否正确。

该文章仅作为自学笔记,不做任何参考性,望周知,勿黑。小白一枚。
2019-06-26留

你可能感兴趣的:(自学笔记)