欢迎来到天天文库
浏览记录
ID:53962415
大小:226.00 KB
页数:3页
时间:2020-04-11
《data:数据库安全性与完整性实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据库原理及应用实验报告题目:数据库安全性与完整性实验专业:计算机科学与技术班级:1420542学号:30姓名:王朔太原工业学院计算机工程系2016年11月20日一、实验目的与要求使学生加深对数据安全性和完整性的理解。并掌握SQLServer中有关用户、角色及操作权限的管理方法。熟悉通过SQL语句对数据进行完整性控制。二、实验内容数据库的安全性实验,在SQLServer企业管理器中,设置SQLServer的安全认证模式,实现对SQLServer的用户和角色管理,设置和管理数据操作权限。具体内容如下:1.设置SQL
2、Server服务器身份验证模式(Windows或SQLServer和Windows(S)认证模式)。2.登录的管理创建一个SQLServe登录用户3.数据库用户的管理登录用户只有成为数据库用户(DatabaseUser)后才能访问数据库。每个数据库的用户信息都存放在系统表Sysusers中,通过查看Sysusers表可以看到该数据库所有用户的情况。SQLServer的数据库中都有两个默认用户:dbo(数据库拥有者用户)和(dba)。通过系统存储过程或企业管理器可以创建新的数据库用户。4.角色的管理创建一个角色,使
3、创建的用户成为该角色的成员,并授予一定的操作权限。5.在学生表中定义主键、外键约束。6.在课程表的“课程名”字段上定义唯一约束。7.在选课表的“成绩”字段上定义check约束,使之必须大于等于0且小于等于100。“课程号”字段只能输入数字字符。8.定义完整性约束命名子句,限制学生表的“性别”字段,使之只能取“男、女”值。9.在学生表中增加出生日期字段,并定义完整性约束命名子句,使出生年月的默认值取当前日期。一、解决方案createroler1grantselect,update,insertonstudentto
4、r1;4createtablestudent3(snochar(9)primarykey,snamechar(20)notnull,ssexchar(2)constraintc1check(ssexin('男','女')),sagesmallint,sdeptchar(20));altertablestudent3addbirthdaydatedefaultgetdate();createtablecourse3(cnointprimarykey,cnamechar(40)unique,cpnochar(4),c
5、creditsmallint,);7createtablesc3(snochar(9),cnoint,gradesmallintcheck(grade>=0andgrade<=100),primarykey(sno,cno),foreignkey(sno)referencesstudent3(sno),foreignkey(cno)referencescourse3(cno));二、实验结果1.设置SQLServer服务器身份验证模式2.登录的管理3.数据库用户的管理4.角色的管理5.在学生表中定义主键、外键约束
6、。6.在课程表的“课程名”字段上定义唯一约束。7.在选课表的“成绩”字段上定义check约束,使之必须大于等于0且小于等于100。“课程号”字段只能输入数字字符。8.定义完整性约束命名子句,限制学生表的“性别”字段,使之只能取“男、女”值。9.在学生表中增加出生日期字段,并定义完整性约束命名子句,使出生年月的默认值取当前日期。五、出现的问题及解决的方法出现的问题:在学生表中增加出生日期用到了getdate函数,需要百度函数用法;执行语句过程中会发生错误,可能是语句冲突,要及时检查并改正。建表是要认真输入数据,以防
7、出现错误。解决方法:看书弄清知识点,寻求同学老师的帮助。总之,一定要细心·耐心,遇到困难解决困难
此文档下载收益归作者所有