广东海洋大学数据库实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四数据的完整性、安全性
一、实验目的
1.掌握数据安全性和完整性的概念,以及如何保证数据库中数据安全及完整性。
2.掌握SQL Server中有关用户、角色及操作权限的管理方法.
3.学会创建和使用规则、缺省。
二、实验内容
1 数据库的安全性实验,通过SSMS设置SQL Server的安全认证模式.实现对SQL Server 的用户和角色管理,设置和管理数据操作权限.
2数据库的完整性实验。使用Transact-SQL设计规则、缺省、约束和触发器。
三、实验要求
1.数据的完整性实验
⑴用SQL语句创建一学生成绩数据库(XSCJ),包括学生(XSQK)、课程(KC)和成绩表(XS_KC):
学生情况表(XSQK)
列名数据类型长度是否允许为空值
学号Char 6 N
姓名Char 8 N
性别Bit 1 N
出生日期smalldatetime 2
专业名Char 10
所在系Char 10
联系电话char 11 Y
课程表(KC)
列名数据类型长度是否允许为空值课程号Char 3 N
课程名Char 20 N
教师Char 10
开课学期Tinyint 1
学时Tinyint 1
学分Tinyint 1 N
成绩表(XS_KC)
列名数据类型长度是否允许为空值学号Char 6 N
课程号成绩Char
Smallint
3
2
N
⑵数据的实体完整性实验
用SSMS分别将学生情况表(XSQK)的学号字段、课程表(KC)的课程号字段设置为主健
②用T-SQL语句将成绩表(XS_KC)的学号、课程号字段设置为主健
⑶数据的参照完整性实验
①用SSMS为成绩表(XS_KC)创建外键FK_ XSQK_ID,外键FK_ XSQK_ID参照学生情况表(XSQK)表的学号
②用T-SQL语句成绩表(XS_KC)创建外键FK_ KC_ID,外键FK_ KC _ID参照课程表(KC)表的课程号
⑷数据的用户定义完整性实验
用T-SQL语句为学生情况表(XSQK)的姓名列创建一个唯一约束
②用SSMS为学生情况表(XSQK)的性别列创建一个检查约束,使得性别的值为男或女
③用T-SQL语句为成绩表(XS_KC)的成绩列创建一个检查约束,使得成绩的值在(0~100)之间
④用SSMS语句课程表(KC)的学时列创建一个缺省约束,缺省值为60
⑤用T-SQL语句课程表(KC)的学分列创建一个缺省约束,缺省值为2
2.将如下数据分别转换成文本数据或Excel的格式,并分别将其导入数据库的各个表中:
学生情况表(
XSQK
):
课程表(KC ):
成绩表(XS_KC ):
学号 姓名 性别 出生日期 专业 所在系 联系电话 020101 杨颖 0 1980-7-20 计算机应用 计算机 020102 方露露 0 1981-1-15 计算机应用 计算机 020103 俞奇军 1 1980-2-20 信息管理 计算机 020104 胡国强 1 1980-11-7 信息管理 计算机 020105 薛冰 1 1980-7-29 水利工程 水利系 020201 秦盈飞 0 1981-3-10 电子商务 经济系 020202 董含静 0 1980-9-25 电子商务 经济系 020203 陈伟 1 1980-8-7 电子商务 经济系 020204
陈新江
1
1980-7-20
房建
水利系
课程号 课程名
教师 开课学期 学时 学分 101 计算机原理 陈红 2 45 3 102 计算方法 王颐 3 45 3 103 操作系统 徐格 2 60 4 104 数据库原理及应用 应对刚 3 75 5 105 网络基础 吴江江 4 45 3 106 高等数学 孙中文 1 90 6 107 英语 陈刚 1 90 6 108
VB 程序设计
赵红韦
3
70
5
3. 理解默认值的概念和作用
①用语句创建名为Xi_default,值为“计算机系”的默认值
②将默认值Xi_default绑定到学生表中的所在系的属性列上
③解除学生表所在系的属性列上的默认值
学号课程号成绩
④删除默认值Xi_default
注:
创建默认值的格式:create default 默认值名as ‘默认值’
默认值绑定的格式:sp_bindefault 默认值名, <’表名.列名’︱自定义数据类型名称>解除默认值绑定格式:sp_unbindefault <’表名.列名’︱自定义数据类型名称>
删除默认值格式:Drop default 默认值名
4.理解规则的概念和作用
①用语句创建规则“rule_kkxq”,用以限制插入该规则所绑定的列中的值只能取1、2、3、4、
5、6
②将“rule_ kkxq”规则绑定到课程表的开课学期属性上,并执行以下语句,看看能否正
常执行,为什么:
Insert into 课程表
Values(109,'C语言','李方',8,64,4)
不能正常执行,因为数值8不在规则rule_kkxq所绑定的数据范围内
③若不解除规则,能否将规则rule_ kkxq直接删除?