数据库实验四_数据库实验四含答案
数据库实验四由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“数据库实验四含答案”。
山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库 同组者: 实验日期: 2018.5.22
实验四 数据库安全性和完整性
一.实验目的1.加深对数据库安全性和完整性的理解 2.学会授权与回收
3.理解并体会数据库实体完整性、参照完整性、用户定义的完整性约束条件的作用
二.实验内容
用户 sa SQL语言:
select * from s;
select * from p;select * from j;select * from spj;
--1.设置用户a对SPJ表的查询权限。
create login a with paword = 'aaaaaaaa';
create user a;
grant select on spj to a with grant option;
--2.设置用户b对S表、P表具有修改的权限,并要求b能够将该权限授予其它用户c,并验证用户c具有该权限。山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库 同组者: 实验日期: 2018.5.22 create login b with paword = 'bbbbbbbb';create login c with paword = 'cccccccc';create user b;create user c;
grant select,update on s to b with grant option;
grant select,update on p to b with grant option;
--3.收回用户a、b的权限,并验证用户c权限的情况。revoke select on spj from a cascade;
revoke select, update on s from b cascade;
revoke select, update on p from b cascade;
--4.对实验1中创建的表,用图形用户界面建立外键联系,并验证外键的作用。delete from s where sno='s1';山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库 同组者: 实验日期: 2018.5.22
--5.对实验1中创建的表,设置零件的颜色必须在红、橙、黄、绿、青、蓝、紫 七种颜色范围内,零件重量不能超过50的约束条件,并给这两种约束条件命名。alter table p add constraint c1 check(color in('红','橙','黄','绿','青','蓝','紫'));
alter table p add constraint c2 check(weight
--6.设置SPJ表中供应零件的数量都不能超过1000 alter table spj add constraint c3 check(qit
--7.设置S表中的供应商号以字母‘S’开头 alter table s add constraint c4 check(sno like 'S%');山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库 同组者: 实验日期: 2018.5.22
--8.验证各个表的实体完整性。
--验证P表 insert into p values('P7','齿轮','黑',40);
insert into p values('P7','齿轮','黑',50);
insert into p values('P7','齿轮','黄',20);
--验证SPJ表 insert into spj(qit)values(2000);
insert into spj(qit)values(999);山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库 同组者: 实验日期: 2018.5.22
--验证S表
insert into s(sno)values('A1');
insert into s(sno)values('S6');
用户a SQL语言:
select * from spj;
select * from s;用户b SQL语言:
grant select,update
on s to c;
grant select,update on p to c;
update p set color='黄' where pno='p1';山东建筑大学 计算机学院 实验报告
班级: 姓名: 学号: 实验成绩:
课程:数据库 同组者: 实验日期: 2018.5.22
update s set status=10 where sno='s1';
select * from s;用户c SQL语言:
update p set color='黄' where pno='p1';
select * from p;