您当前的位置: 首页 >  sql

[MSSQL]with check option和with grant option

发布时间:2017-12-20 09:25:48 ,浏览量:0

·with check option

表示对视图进行update、insert、delete操作时,只要保证更新、插入或删除的行满足视图定义中的谓词条件(即子查询中的条件表达式) SQL语言用CREATE VIEW 命令创建视图,其一般格式如下。 CREATE VIEW<试图名> [(<列名>[,<列名>]…)] AS <子查询> [WITH CHECK OPTION]; eg.已知关系模式:图书(图书编号,图书类型、图书名称、作者,出版社,出版日期,ISBN),图书编号唯一标识一本图书。建立“计算机”类图书的视图Computer-BOOK,并要求进行修改插入操作时保证该视图只有计算机类图书。实现上述要求的SQL语句如下:

CREATE VIEW Computer-BOOK AS SELECT 图书编号,图书名称,作者,出版社,出版日期 FROM 图书 WHERE 图书类型=“计算机” WITH CHECK OPTION; 解析:使用语句CREATE VIEW Computer-BOOK创建一个“计算机”类图书的视图,使用语句WITH CHECK OPTION满足“进行修改、插入操作时保证该视图只有计算机类的图书”(即子查询中的条件表达式WHERE 图书类型=“计算机”)

小结: 对于update,有with check option,要保证update后,数据要被视图查询出来 对于delete,有无with check option都一样 对于insert,有with check option,要保证insert后,数据要被视图查询出来 对于没有where子句的视图,使用with check option是多余的。 ·with grant option with grant option的意思是:权限赋予/取消是级联的,如将with grant option用于对象授权时,被授予的用户也可把此对象权限授予其他用户或角色,不同的是但管理员收回用with grant option授权的用户对象权限时,权限会因传播而失效,如grant select on table with grant option to A,A用户把此权限授予B,但管理员收回A的权限时,B的权限也会失效,但管理员不可以直接收回B的SELECT ON TABLE 权限。

关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    105695博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0458s