收藏 分享(赏)

数据库完整性与安全性实验.doc

上传人:dzzj200808 文档编号:4067905 上传时间:2018-12-06 格式:DOC 页数:14 大小:497.50KB
下载 相关 举报
数据库完整性与安全性实验.doc_第1页
第1页 / 共14页
数据库完整性与安全性实验.doc_第2页
第2页 / 共14页
数据库完整性与安全性实验.doc_第3页
第3页 / 共14页
数据库完整性与安全性实验.doc_第4页
第4页 / 共14页
数据库完整性与安全性实验.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、北京邮电大学实验报告课程名称 数据库系统原理实验内容 实验五数据库完整性与安全性实验2015 年 5 月 12 日实验五 数据库完整性与安全性实验实验目的1. 通过对完整性规则的定义实现,熟悉了解 SQL SERVER 中完整性保证的规则和实现方法,加深对数据完整性的理解。2. 通过对安全性相关内容的定义,熟悉了解 SQL SERVER 中安全性的内容和实现方法,加深对数据库安全性的理解实验内容完整性实验与要求:1. 分别定义数据库中各基表的主键、外键,实现实体完整性约束和参照完整性约束;设置了学生选课数据库中基表的主外键2. 向学生表插入具有相同学号的数据,验证其实体完整性约束;(1) En

2、terprise Manager(2)T_SQL3. 向学生表中插入一条数据,班级号是学生表的外键,验证参照完整性约束;(1)Enterprise Manager(2)T_SQL 4. 删除教师表中的所有数据,验证参照完整性约束;(1)Enterprise Manager(2)T_SQL5. 定义存储过程,完成查询学生表中学号=g9940206 的行,并执行。create procedure chouzhu asselect student$.student_id,student$.student_name,course$.course_name,student_course$.credit

3、from student$,course$,student_course$ where student$.student_id =g9940206and student$.student_id=student_course$.student_id and course$.course_id =student_course$.course_id go定义存储过程 chouzhu执行后得到6. 定义触发器,当向学生表插入一条记录时,将所有学生的学号值加 1;并对其进行测试USE 学生选课GO/* Object: Trigger dbo.hhhhhh Script Date: 05/12/2015

4、17:01:52 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOALTER trigger dbo.hhhhhh on dbo.student$ after insert as beginupdate student$ set student_id=substring(student_id,1,1)+cast(substring(student_id,2,7)+1)as varchar(5 0) end安全性实验内容与要求:1. 定义一新的登陆帐号、数据库用户,并授予其访问学生选课数据库的读权限;(1)Enterprise Manager新建了登

5、陆账号 chouzhu 新建数据库用户 chouzhu_hi(2)Transact_SQLuse 学生选课 goexec sp_addlogin chouzhu2exec sp_grantdbaccess chouzhu2exec sp_addrolemember db_datareader,chouzhu2Go 成功创建 chouzhu2 登录名和用户名 2. 分别采用 Windows NT/2000 验证方式和 Windows NT/2000 及 SQL Server 混合验证方式用不同的用户进行登录连接;俩种验证方式均可登陆连接成功3. 分别用 sa 用户和新定义的用户访问通信数据库,并

6、对其中的学生表数据进行修改;Sa 用户登陆成功,并成功修改了学生表数据Chouzhu 用户登陆成功,但无权限修改学生表4. 创建数据库角色,并授予访问通信数据库的读、写权限;(1)Enterprise Manager新建数据库角色 chouzhu6(2)Transact_SQL新建数据库角色 chouzhucreate role chouzhugrant select,insert on book$ to chouzhugrant select,insert on class$ to chouzhugrant select,insert on class_course$ to chouzhug

7、rant select,insert on course$ to chouzhugrant select,insert on department$ to chouzhugrant select,insert on student$ to chouzhugrant select,insert on student_course$ to chouzhugrant select,insert on teacher$ to chouzhugrant select,insert on teacher_course_class$ to chouzhu5. 将角色赋予(1)中定义的用户,建立用户和角色联系;(1)Enterprise Manager(2)Transact_SQLEXEC sp_addrolemember chouzhu, chouzhu_hi建立了用户和角色的联系6. 再次用此用户访问通信数据库,并对其中的学生表数据进行修改。实验总结:通过这次实验对完整性和安全性有了更全面的认识,遇到不明白的问题主要是靠网上查询解决的。设置主键和外键都是比较容易的,但是在设置外键时要注意数据类型的一致性。至于设置一系列的新登录名用户则是更加深入的了解了理论知识的运用。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 中等教育 > 中学实验

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报