数据库定义实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库安全性与完整性实验
报告
题目:数据库定义实验
专业:网络工程
班级:1220551
学号:43
姓名:李剑
太原工业学院计算机工程系
20114年10 月10 日一、实验目的与要求
使学生加深对数据库安全性和完整性的理解。并掌握SQL Server中有关用户角色及操作权限的管理方法。熟悉通过SQL语句对数据库进行完整性分析。
二、实验内容和要求
数据库的安全性实验,在SQL Server企业管理器中,设置SQL Server的安全认证模式,实现对SQL Server的用户和角色管理。设置和管理数据库操作权限。
具体内容如下:
1.设置SQL Server的安全认证模式(Windows或SQL Server和Windows(S)认证模式。
2.登录的管理
创建一个登录用户。
3.数据库的用户管理
登录用户只有成为数据库用户(Datebase User)后才能访问数据库。每个数据库的用户信息都存放在系统表Sysusers中,通过查看Sysusers表可以看到该数据库所有用户的情况。SQL Server的数据库中都有两个默认用户:bdo(数据库拥有者用户和(dba)。通过系统储存过程或企业管理器可以创建新的数据库用户。
角色的管理
4.创建一个角色,使创建的用户成为该角色的成员,并授予一定的操作权限。
5.在学生表中定义主键,外键约束
6.在课程表的“课程名”字段上定义唯一约束。
7.在选课表的“成绩”字段上定义check约束,使之必须大于等于0且小于等于100,“课程号”字段只能输入数字字符。
8.定义规则,并绑定到学生表的“性别”字段,使之只能取“男,女”值。
9.在学生表中增加出生日期段。定义缺省,并绑定到学生表的“出生日期”上,使之只能取当前的日期。
三、解决方案
通过实验,掌握了创建登录用户用户管理,角色管理方面的内容,并且可以给给表中创造约束条件。建的用户成为该角色的成员,并授予一定的操作权限时,无法找到到哪儿去进行权限设置,最后通过百度搜索找到如何设置角色的权限。
四、实验结果
1.设置SQL Server 的安全认证模式(Windows 或SQL Server 和Windows(S)认证模
式。
如图所示:
2.登录的管理
创建一个登录用户。 如图所示:
3.数据库用户的管理
结果如下:
5.在学生表上定义主键,外键约束。
create table S
(Sno PRIMARY KEY,
DNO nchar(10)
foreign key (DNO)REFERENCES D(DNO)
);
6.在课程表的课程名字段上定义唯一约束。
ALTER TABLE C
ADD UNIQUE(Cname)
7.在选课表的“成绩”字段上定义check约束,使之必须大于等于0且小于等于100,“课程号”字段只能输入数字字符。
ALTER TABLE SC
add constraint c1check(Grade between 0 and 100);
alter table sc
add constraint c2check(Grade like'[0-9],[0-9],[0-9]')
5.6.7的实验结果:
8.定义规则,并绑定到学生表的“性别”字段,使之只能取“男,女”值。CREA TE RULE sex_rule AS@ssex IN('男','女')
sp_bindrule sex_rule,'student.ssex'
实验结果:
五、出现的问题及解决的方法
创建的用户成为该角色的成员,并授予一定的操作权限时,无法找到到哪儿去进行权限设置,最后通过百度搜索找到如何设置角色的权限。