广东海洋大学数据库实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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直接删除?

相关文档
最新文档