博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据库SQL语言语法总结6---数据控制
阅读量:4005 次
发布时间:2019-05-24

本文共 1345 字,大约阅读时间需要 4 分钟。

一:授权

grant <权限> [,<权限>] … [on <操作对象类型><操作对象名>] to <用户>[,<用户>]…[with grant option]

作用:将对某一对象的某一权限授予某一用户

语法各部分解释:

这里写图片描述

用户:

public: 全体用户
也可以是单个用户的用户名

[with grant option]

这个选项表示是否将授予此操作的权利的权利授予用户。举个例子:grant select on table Student to u2 with grant option 表示将查询Student表的权利下放给用户u2,意味着用户u2可以查询Student表了,然而加上with grant option 表示用户u2可以将查询权限下放给其他用户,当u2将权限下放给u3时,u3和u2都可以查询表。不加with grant option ,u2没有权限将查询权利授予其他用户。

下面结合几个例子帮助看客来了解以上语句的用法:

前提条件:

数据库中现存在3个关系表
Student (Sno ,Sname,Ssex,Sage,Sdept);
解释:学生(学号,学生姓名,学生性别,学生年龄,学生专业);
Course(Cno,Cname,Cpno);
解释:课程(课程号,课程名,可能的先修课程);
SC(Sno,Cno,Grade);
解释:学生选课情况(学号,课程号,成绩)

举例:

1): 将查询Student表的权利授予全体用户————grant select on table Student to public
2): 将Student和Course表的所有权利授予u2和u3,其中包括Select,insert,update,delete,alter,index这六个权限————-grant all on table Student,Course to u2,u3
3): 将Student关系表的查询权限和Sno属性列的修改权限授予用户u4——-grant update(Sno),select on table Student to u4
4): 将SC关系表的插入操作的权限授予u5并且u5可以将插入权限授予给其他用户———-grant insert on table SC to u5 with grant option

二:收回权限

当察觉到一个用户对数据库的操作的权限过大时,应该采取措施进行收回权限,以保证数据库的正常运行

revoke <权限> [,<权限>]… [on <对象类型><对象名>] from <用户>[,<用户>]…

举例:

1): 将更新Student关系表中的学号的权限从u4中收回——-revoke update(Sno) on table Student from u4
2): 将对Student关系表的插入权限从u5中收回————-revoke insert on table SC from u5 (如果创建时加with grant option,则删除时将此权限也一并收回)
3): 将对SC关系表的查询权限从全体用户中收回————-revoke select on table SC from public

你可能感兴趣的文章
第一性原理:戳中问题本质的人是怎么思考的?
查看>>
No.147 - LeetCode1108
查看>>
No.148 - LeetCode771
查看>>
No.174 - LeetCode1305 - 合并两个搜索树
查看>>
No.175 - LeetCode1306
查看>>
No.176 - LeetCode1309
查看>>
FE:http状态码
查看>>
No.182 - LeetCode1325 - C指针的魅力
查看>>
mac:移动python包路径
查看>>
mysql:sql create database新建utf8mb4 数据库
查看>>
mysql:sql alter database修改数据库字符集
查看>>
mysql:sql alter table 修改列属性的字符集
查看>>
mysql:sql drop table (删除表)
查看>>
mysql:sql truncate (清除表数据)
查看>>
scrapy:xpath string(.)非常注意问题
查看>>
yuv to rgb 转换失败呀。天呀。谁来帮帮我呀。
查看>>
yuv420 format
查看>>
单纯的把Y通道提取出来能正确显示出灰度图来为什么我的Qt就显示不出来呢转换有问题呀?
查看>>
YUV420只绘制Y通道
查看>>
yuv420 还原为RGB图像
查看>>