实验16 数据库触发器与权限
第1关 执行 CREATE USER 创建以2022100904为用户名的用户,同时设置其密码为root1234
sql
1 | #请在此处添加实现代码 |
第2关 给予创建的用户2022100904在mydata数据库中授予"J" 表 SELECT 权限
sql
1 | USE mydata; |
第3关 给予创建的用户2022100904、2022100908授予"J"表 的ALL PRIVILEGES权限
sql
1 | USE mydata; |
第4关 给予创建的用户2022100904在mydata数据库中授予“J”表的UPDATE和INSERT权限
sql
1 | USE mydata; |
第5关 回收用户2022100904在mydata数据库中授予的 “J” 表 SELECT权限
sql
1 | USE mydata; |
第6关 回收用户2022100904、2022100908在mydata数据库的中授予 的J表ALL PRIVILEGES权限
sql
1 | USE mydata; |
第7关 回收用户2022100904在mydata数据中授予的“J”表UPDATE和INSERT的权限
sql
1 | USE mydata; |
第8关 创建角色名为 R1的角色
sql
1 | #请在此处添加实现代码 |
第9关 给予创建的角色R1在mydata数据库中授予"J" 表 的SELECT 、UPDATE、INSERT权限
sql
1 | USE mydata; |
第10关 给予创建的用户2022100904授予角色R1权限
sql
1 | USE mydata; |
第11关 给予已授权限的角色R1在mydata数据库中再次授予"J" 表 的DELETE权限
sql
1 | USE mydata; |
第12关 回收角色R1 对 J 表的 INSERT 权限
sql
1 | USE mydata; |
第13关 通过角色R1回收用户2022100904的被授予J表的SELECT 、UPDATE、INSERT权限
sql
1 | USE mydata; |
第14关 编写一个名为INSERT_S的触发器,在S表执行 INSERT 语句后被激发
sql
1 | USE mydata; |
第15关 编写一个名为UPDATE_S的触发器,检查S表的STATUS,只允许0-100之间,如果超过100后,改为100。
sql
1 | USE mydata; |
第16关 编写一个名为UPDATE_SPJ的触发器,SPJ表中有更新某条记录的QTY时,自动更新表SPJ_SUMQTY表
sql
1 | USE mydata; |
第17关 编写一个名为DELETE_SPJ的触发器,当SPJ表中有删除某条记录时,自动更新表SPJ_SUMQTY表
sql
1 | USE mydata; |
第18关 编写一个名为INSERT_SPJ的触发器,当SPJ表中有插入某条记录时,自动更新表SPJ_SUMQTY表
sql
1 | USE mydata; |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Crayz's Blog!