校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > UI专业知识 > 色彩
题目

可以将某个22元的商品价格改为18元的视图是?

A.create view v1 as select * from goods where price>20

B.create view v2 as select * from goods where price<20

C.create view v3 as select * from goods where price>20 with check option

D.create view v4 as select * from goods where price<20 with check option

解答

正确答案是 A

通过有with check option选项的视图操作基表(只是面对单表,对连接多表的视图正在寻找答案),有以下结论:

首先视图只操作它可以查询出来的数据,对于它查询不出的数据,即使基表有,也不可以通过视图来操作。
1.对于update,有with check option,要保证update后,数据要被视图查询出来
2.对于delete,有无with check option都一样
4.对于insert,有with check option,要保证insert后,数据要被视图查询出来

对于没有where 子句的视图,使用with check option是多余的。
C 2条回复 评论
扎克斯

接前人的答案:1.对于update,有with check option,要保证update后,数据要被视图查询出来。
而update之后,即变为18元之后,“where price>20”就不满足了,所以就不能“保证update后,数据要被视图查询出来。” 。
故不能选C。【纯个人理解】

发表于 2018-10-11 14:38:34
0 0
Almost

WITH CHECK OPTION 可确保在视图上update 修改后,通过视图【仍可】看到修改后的数据 ,意思是原来筛选了价格>20的商品,若有【with check option】限制,则不能把视图中的价格修改为18,这样就看不到了,改后的价格必须大于20

发表于 2018-10-11 14:38:12
0 0