2022年数据库完整性与安全性实验收集 .pdf
《2022年数据库完整性与安全性实验收集 .pdf》由会员分享,可在线阅读,更多相关《2022年数据库完整性与安全性实验收集 .pdf(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、北京邮电大学实验报告课程名称数据库系统概念实验名称数据库完整性与安全性实验_系_班姓名_系_班姓名教师 _ 成绩 _ 2011 年 5 月 2 日目录一、实验目的 . 4 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 28 页 - - - - - - - - - 二、实验内容 . 4 三、实验环境 . 7 四、实验要求 . 7 五、实验步骤及结果分析. 7 ( 一)完整性实验 . . 7一、建表阶段 . . 7二、主键/ 候选键约束验证. 10三、外键约束验证 . 12
2、四、check/ 触发器约束验证. 18( 二)安全性实验 . . 错误!未定义书签。六、实验总结 . 错误!未定义书签。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 28 页 - - - - - - - - - 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 28 页 - - - - - - - - - 一、实验目的1 通过对完整性规则的定义实现
3、,熟悉了解Sybase 数据库中实体完整性、参照完整性、断言等完整性保证的规则和实现方法,加深对数据完整性的理解。2通过对安全性相关内容的定义,熟悉了解 Sybase 数据库中安全性的内容和实现方法,加深对数据库安全性的理解。二、实验内容( 一)、完整性实验与要求:一、建表阶段1 利用 SQL语句,分别定义数据库中各基本表的主键、候选键、外键,实现实体完整性约束和参照完整性约束。2 在数据库中选取两张或三张具有外键关联的表,利用语句foreign keyreferences创建外键,实现参照完整性约束。3 根据实际背景,对某些表中的某些特定属性,定义空值、非空约束。4 建表时,使用check
4、谓词,通过断言,添加如下一些约束:(1)个 MSC 最多管理10 个 BSC 。(2)个 BSC最多管理50 个小区 / 扇区。(3)个 BTS可以连接至1-3 个 BSC 。(4)个 MS可以位于1 到 6 个 BTS的覆盖范围内。(5)小区 / 扇区所使用的频点号在,124之间。二、主键 / 候选键约束验证1. 选取定义了主键的关系表,向该表插入在主属性上取值为空的元组,观察系统反应; 选取表中某些或某个元组,修改这些元组在主属性上的取值,或插入新元组,使这些元组与表中已有其它元组的主属性取值相同,观察系统反应;2. 选取定义了候选键的关系表,向该表插入在候选键属性上取值为空的元组,观察系
5、统反应;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 28 页 - - - - - - - - - 选取表中某些或某个元组,修改这些元组在候选键属性上的取值,或插入新元组,使这些元组与表中已有其它元组的候选键属性取值相同,观察系统反应;三、外键约束验证参照教科书和讲义上关于4.2.5节内容,完成下述实验。1 选取相互间定义了外键关联的一组表,分别在参照关系、被参照关系上, 对表的主属性/外键属性作插入、删除、更新等操作,观察当1 个表(如参照关系表、被参照关系表)在外键
6、或主属性属性上的取值发生变化时,数据库管理系统对这些操作的反应,以及另外一个表(如被参照关系表、参照关系表)在主属性或外键属性上的取值的变化,并记录实验结果。上述插入、删除、更新操作操作分为违反约束和不违反约束两种情况。2 观察级联操作对外键约束的影响1)对相互间定义了外键关联关系的一组表,分别使用foreign keyreferences on delete cascade on update cascade on insert cascade 语句创建级联外键约束。2) 分别在参照关系、被参照关系上,对表的主属性/外键属性作插入、删除、更新等操作,观察当 1 个表(如参照关系表、被参照关系
7、表)在外键或主属性属性上的取值发生变化时,数据库管理系统对这些操作的反应,以及另外一个表(如被参照关系表、参照关系表)在主属性或外键属性上的取值的变化,并记录实验结果。上述插入、删除、更新操作操作分为违反约束和不违反约束两种情况。分别用 DB2 Control Center和 DB2 CLP完成以上操作。三、 check/ 触发器约束验证选取建表阶段定义的2 个断言约束,对断所涉及的元组属性做插入、删除、更新操作,观察当违反断言、 触发器约束条件时,DBMS 的反映和关系表内元组数据的变化(对触发器) 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
8、- - - - - - 名师精心整理 - - - - - - - 第 5 页,共 28 页 - - - - - - - - - ( 二)、安全性实验内容与要求:Sybase数据库实验:(1)以 DBA身份登陆系统, 创建用户, 对用户授予不同的访问数据库权限。例如:连接、DBA 、RESOURCE等权限。具有 RESOURCE 权限的用户可以创建新的数据库对象,例如表、视图、索引、过程或触发器。(2)由 DBA为普通用户授予(grant )或撤销( revoke )针对数据库中表、视图等不同数据对象的不同访问权限;由DBA为普通用户授予授予权限的权限。(3)以常规用户登录,用户在权限范围内、超
9、出权限范围访问相应数据对象,查看访问结果和 DBMS 的反映。(4)分别在图形化界面、命令行中,使用revoke 命令撤销用户权限。(5)分别在图形化界面、命令行中,使用revoke 命令删除数据库用户。(6)创建数据库时, 还会自动创建SYS 、 PUBLIC 和 dbo 组 (Sybase 数据库) 。通过帮助文档,了解这些组在数据库中起到的作用。(7)以 DBA身份登陆系统,创建用户组,为用户组授予(grant )或撤销( revoke )针对数据库中表、视图等不同数据对象的不同访问权限。(8)将组成员资格授予现有用户或组,现有用户或组访问数据库对象,查看访问结果。撤销现有用户或组的组成
10、员资格,查看访问结果。(9)分别在图形化界面、命令行中,使用revoke 命令从数据库删除组。(10) 分别采用Windows NT/2000 验证方式和Windows NT/2000 及 DB2或 Sybase 数据库混合验证方式用不同的用户进行登录连接。(11) 创建数据库角色,并授予访问通信数据库的读、写权限, 并对其中的Cell表数据进行修改。(12) 将角色赋予(1)中定义的用户,建立用户和角色联系。(13) 再次用此用户访问通信数据库,并对其中的Cell表数据进行修改。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - -
11、名师精心整理 - - - - - - - 第 6 页,共 28 页 - - - - - - - - - 三、实验环境采用 Sybase数据库管理系统作为实验平台。其中, Sybase数据库采用Sybase Adaptive Server Enterprise 15.0( ASE ) 。四、实验要求1 用 Transact_SQL 语句完成以上操作。2 要求学生独立完成以上内容。实验完成后完成要求的实验报告内容。五、实验步骤及结果分析( 一)完整性实验一、建表阶段1、 利用 SQL语句,分别定义数据库中各基本表的主键、候选键、外键,实现实体完整性约束和参照完整性约束。代码详见附录。2、 在数据库
12、中选取两张或三张具有外键关联的表,利用语句foreign keyreferences创建外键,实现参照完整性约束。代码详见附录。3、 根据实际背景,对某些表中的某些特定属性,定义空值、非空约束。代码详见附录。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 28 页 - - - - - - - - - 4、 建表时,使用check 谓词,通过触发器,添加如下一些约束:a)个 MSC 最多管理10 个 BSC 。脚本: create trigger BSC_to_MSC on
13、 BSC forinsert,update as if exists ( selectinserted.MscID from inserted,(select MscID,count(BscID) as BSC_number from BSC group by MscID) as MSC_Count_BSC where BSC_number 10 and inserted.MscID = MSC_Count_BSC.MscID ) begin print A MSC can only manage at most 10 BSCs. rollback transaction endb)个 BSC
14、最多管理50 个小区 / 扇区。脚本: create trigger CELL_to_BSC on CELL forinsert,update as if exists ( selectinserted.BTSname frominserted,BTS,( select BSC.BscID,count(distinct CellID) as Cell_number from BSC,BTS,CELL whereBSC.BscID = BTS.BscID and BTS.BTSname = CELL.BTSname group by BSC.BscID) as BSC_Count_Cell wh
15、ereCell_number 50 and inserted.BTSname = BTS.BTSname and BTS.BscID = BSC_Count_Cell.BscID ) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 28 页 - - - - - - - - - begin print A BSC can only manage at most 50 Cells. rollback transaction end c)个 BTS可以连接至1-3 个 BSC
16、。脚本: create trigger BTS_to_BSC onKong_Zhi forinsert,update as if exists (selectinserted.BTSname from inserted,(select BTSname,count(BscID) as BSC_number fromKong_Zhi group by BTSname) as BTS_Count_BSC whereinserted.BTSname = BTS_Count_BSC.BTSname and BSC_number not between 1 and 3) begin print A BTS
17、 can only connect to at least 1 and at most 3 BSCs. rollback transaction end d)个 MS可以位于1 到 6 个 BTS的覆盖范围内。脚本: create trigger MS_to_BTS onFu_Gai forinsert,update as if exists (selectinserted.CellID from inserted,(select IMEI,count(CellID) as BTS_number fromFu_Gai group by IMEI) as MS_Count_BTS 名师资料总结
18、- - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 28 页 - - - - - - - - - whereinserted.IMEI = MS_Count_BTS.IMEI and MS_Count_BTS.BTS_number not between 1 and 6) begin print An MS can only connect to at least 1 and at most 6 BTS. rollback transaction end e)小区 / 扇区所使用的频点号在
19、,124之间。脚本: alter table Pin_Dian add constraint CHECK_FREQ check (Freq between 1 and 124) 二、主键/ 候选键约束验证1.选取定义了主键的关系表,向该表插入在主属性上取值为空的元组,观察系统反应;此步骤中选取MSC 表。向 MSC 表中插入元组(NULL,HWMSC2,Huawei,121.123456,41.123456,2000),结果如下:插入操作失败。选取表中某些或某个元组,修改这些元组在主属性上的取值,或插入新元组,使这些元组与表中已有其它元组的主属性取值相同,观察系统反应;此步骤中选取MSC 表,
20、采用插入操作。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 28 页 - - - - - - - - - 插入前 MSC 表中已有如下记录:向 MSC 表中插入元组(5214,HWMSC2,Huawei,121.123456,41.123456,2000),结果如下:主键取值必须唯一,因此插入失败。2.选取定义了候选键的关系表,向该表插入在候选键属性上取值为空的元组,观察系统反应;此步骤中选取Hua_Wu 表( 话务数据 ) ,向 MSC 表中插入元组(9011,NU
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年数据库完整性与安全性实验收集 2022 数据库 完整性 安全性 实验 收集
限制150内