14班06051Word格式.docx
- 文档编号:20749595
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:12
- 大小:80.78KB
14班06051Word格式.docx
《14班06051Word格式.docx》由会员分享,可在线阅读,更多相关《14班06051Word格式.docx(12页珍藏版)》请在冰豆网上搜索。
4.建表时,使用check谓词,通过断言,添加如下一些约束:
(1)1个MSC最多管理10个BSC。
(2)1个BSC最多管理50个小区/扇区。
(3)1个BTS可以连接至1-3个BSC。
(4)1个MS可以位于1到6个BTS的覆盖范围内。
(5)小区/扇区所使用的频点号在[1,124]之间。
二、主键/候选键约束验证
1.选取定义了主键的关系表,向该表插入在主属性上取值为空的元组,观察系统反应;
选取表中某些或某个元组,修改这些元组在主属性上的取值,或插入新元组,使这些元组与表中已有其它元组的主属性取值相同,观察系统反应;
2.选取定义了候选键的关系表,向该表插入在候选键属性上取值为空的元组,观察系统反应;
选取表中某些或某个元组,修改这些元组在候选键属性上的取值,或插入新元组,使这些元组与表中已有其它元组的候选键属性取值相同,观察系统反应;
三、外键约束验证
参照教科书和讲义上关于4.2.5节内容,完成下述实验。
1.选取相互间定义了外键关联的一组表,分别在参照关系、被参照关系上,对表的主属性/外键属性作插入、删除、更新等操作,观察当1个表(如参照关系表、被参照关系表)在外键或主属性属性上的取值发生变化时,数据库管理系统对这些操作的反应,以及另外一个表(如被参照关系表、参照关系表)在主属性或外键属性上的取值的变化,并记录实验结果。
上述插入、删除、更新操作操作分为违反约束和不违反约束两种情况。
2.观察级联操作对外键约束的影响
1)对相互间定义了外键关联关系的一组表,分别使用
foreignkey-references
ondeletecascade
onupdatecascade
oninsertcascade
语句创建级联外键约束。
2)分别在参照关系、被参照关系上,对表的主属性/外键属性作插入、删除、更新等操作,观察当1个表(如参照关系表、被参照关系表)在外键或主属性属性上的取值发生变化时,数据库管理系统对这些操作的反应,以及另外一个表(如被参照关系表、参照关系表)在主属性或外键属性上的取值的变化,并记录实验结果。
上述插入、删除、更新操作操作分为违反约束和不违反约束两种情况。
分别用DB2ControlCenter和DB2CLP完成以上操作。
三、check/触发器约束验证
选取建表阶段定义的2个断言约束,对断所涉及的元组属性做插入、删除、更新操作,观察当违反断言、触发器约束条件时,DBMS的反映和关系表内元组数据的变化(对触发器)。
(二)、安全性实验内容与要求:
Sybase数据库实验:
(1)以DBA身份登陆系统,创建用户,对用户授予不同的访问数据库权限。
例如:
连接、DBA、RESOURCE等权限。
具有RESOURCE权限的用户可以创建新的数据库对象,例如表、视图、索引、过程或触发器。
(2)由DBA为普通用户授予(grant)或撤销(revoke)针对数据库中表、视图等不同数据对象的不同访问权限;
由DBA为普通用户授予‘授予权限’的权限。
(3)以常规用户登录,用户在权限范围内、超出权限范围访问相应数据对象,查看访问结果和DBMS的反映。
(4)分别在图形化界面、命令行中,使用revoke命令撤销用户权限。
(5)分别在图形化界面、命令行中,使用revoke命令删除数据库用户。
(6)创建数据库时,还会自动创建SYS、PUBLIC和dbo组(Sybase数据库)。
通过帮助文档,了解这些组在数据库中起到的作用。
(7)以DBA身份登陆系统,创建用户组,为用户组授予(grant)或撤销(revoke)针对数据库中表、视图等不同数据对象的不同访问权限。
(8)将组成员资格授予现有用户或组,现有用户或组访问数据库对象,查看访问结果。
撤销现有用户或组的组成员资格,查看访问结果。
(9)分别在图形化界面、命令行中,使用revoke命令从数据库删除组。
(10)分别采用WindowsNT/2000验证方式和WindowsNT/2000及DB2或Sybase数据库混合验证方式用不同的用户进行登录连接。
(11)创建数据库角色,并授予访问通信数据库的读、写权限,并对其中的Cell表数据进行修改。
(12)将角色赋予
(1)中定义的用户,建立用户和角色联系。
(13)再次用此用户访问通信数据库,并对其中的Cell表数据进行修改。
三、实验环境
采用Sybase数据库管理系统作为实验平台。
其中,Sybase数据库采用SybaseAdaptiveServerEnterprise15.0(ASE)。
四、实验要求
1.用Transact_SQL语句完成以上操作。
2.要求学生独立完成以上内容。
实验完成后完成要求的实验报告内容。
五、实验步骤及结果分析
(一)完整性实验
一、建表阶段
建表时,使用check谓词,通过触发器,添加如下一些约束:
a)1个MSC最多管理10个BSC。
脚本:
createtriggerBSC_to_MSC
onBSC
forinsert,updateas
ifexists
(
selectinserted.MscID
frominserted,(selectMscID,count(BscID)asBSC_number
fromBSC
groupbyMscID)asMSC_Count_BSC
whereBSC_number>
10andinserted.MscID=
MSC_Count_BSC.MscID
)
begin
print"
AMSCcanonlymanageatmost10BSCs."
rollbacktransaction
end
b)1个BSC最多管理50个小区/扇区。
createtriggerCELL_to_BSC
onCELL
selectinserted.BTSname
frominserted,BTS,(selectBSC.BscID,count(distinctCellID)asCell_number
fromBSC,BTS,CELL
whereBSC.BscID=BTS.BscIDandBTS.BTSname=CELL.BTSname
groupbyBSC.BscID)asBSC_Count_Cell
whereCell_number>
50andinserted.BTSname=BTS.BTSnameandBTS.BscID=BSC_Count_Cell.BscID
ABSCcanonlymanageatmost50Cells."
c)1个BTS可以连接至1-3个BSC。
createtriggerBTS_to_BSC
onKong_Zhi
(selectinserted.BTSname
frominserted,(selectBTSname,count(BscID)asBSC_number
fromKong_Zhi
groupbyBTSname)asBTS_Count_BSC
whereinserted.BTSname=BTS_Count_BSC.BTSnameandBSC_numbernotbetween1and3)
ABTScanonlyconnecttoatleast1andatmost3BSCs."
d)1个MS可以位于1到6个BTS的覆盖范围内。
createtriggerMS_to_BTS
onFu_Gai
(selectinserted.CellID
frominserted,(selectIMEI,count(CellID)asBTS_number
fromFu_Gai
groupbyIMEI)asMS_Count_BTS
whereinserted.IMEI=MS_Count_BTS.IMEIandMS_Count_BTS.BTS_numbernotbetween1and6)
AnMScanonlyconnecttoatleast1andatmost6BTS."
e)小区/扇区所使用的频点号在[1,124]之间。
altertablePin_Dian
addconstraintCHECK_FREQcheck
(Freqbetween1and124)
二、主键/候选键约束验证
选取定义了主键的关系表,向该表插入在主属性上取值为空的元组,观察系统反应;
此步骤中选取MSC表。
向MSC表中插入元组
(NULL,'
HWMSC2'
'
Huawei'
121.123456,41.123456,2000),结果如下:
插入操作失败。
此步骤中选取MSC表,采用插入操作。
插入前MSC表中已有如下记录:
(5214,'
主键取值必须唯一,因此插入失败。
三、外键约束验证
以下实验步骤所使用的表为:
参照关系表:
CELL(小区基本信息表)
被参照关系表:
BTS
对参照关系表CELL进行操作:
1.插入:
a.违反约束:
插入元组
(9010,'
ZHEGEBUCUNZAI'
KF'
14119,121.123456,41.123456,0,400,82),结果如下:
失败原因:
BTS中不存在BTSname为”ZHEGEBUCUNZAI”的记录。
b.不违反约束:
XUEYUANMEN1,'
插入成功。
四、check/触发器约束验证
此步骤选取Fu_Gai与Kong_Zhi两张关系表上的触发器约束:
1.Fu_Gai表:
Ø
插入:
插入前表中已有以下元组:
现插入元组(9461,'
406985426586220'
),结果如下:
插入失败,因为串号为‘406985426586220’的MS已经被6个CELL覆盖。
删除:
删除元组(9011,'
删除成功。
更新:
更新元组(9041,'
)为(9041,'
852102655231250’),结果如下:
更新成功。
2.Kong_Zhi表:
现插入元组(42218,'
XUEYUANMEN1'
插入失败,因为名字为‘XUEYUANMEN1’的BTS已经连接至3个BSC。
删除元组(42215,'
更新元组(42216,'
)为(42216,'
KAIFAQU1’),结果如下:
(三)、安全性实验内容与要求:
1)以DBA身份登陆系统,创建用户,对用户授予不同的访问数据库权限。
因软件版本的选择不同,本次实验中选择以sa为登陆的超级用户。
在a用户下,有权限进行用户的创建和对用户的授权。
2)由DBA为普通用户授予(grant)或撤销(revoke)针对数据库中表、视图等不同数据对象的不同访问权限;
先进入数据库的login选项,然后新建一个Login项。
然后在数据库的users选项下就会出现一个与login同名的用户,即用创建login的形式就可以创建一个用户。
然后就可以为此用户授予权限:
3)以常规用户登录,用户在权限范围内、超出权限范围访问相应数据对象,查看访问结果和DBMS的反映。
4)角色赋予
(1)中定义的用户,建立用户和角色联系。
将角色赋给用户:
grantroleexampletoguest
5)再次用此用户访问通信数据库,并对其中的Cell表数据进行修改。
updateCELLsetAreaName="
shanghai"
whereCellID=9012;
可以看到在数据库中,CellID为9012的项的AreaName改成了shanghai。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 14 06051