数据库实验6数据完整性 下载本文

内容发布更新时间 : 2024/12/26 18:16:18星期一 下面是文章的全部内容请认真阅读。

实验6数据完整性

1.实验目的

(1) 掌握SQL Server管理平台和Transact-SQL语句(CREATE RULE、DROP RULE)创建和删除规则的方法。

(2) 掌握系统存储过程sp_bindrule、sp_unbindrule绑定和解除绑定规则的操作方法,以及sp_helptext查询规则信息、sp_rename更名规则的方法。

(3) 掌握SQL Server管理平台和Transact-SQL语句(CREATE DEFAULT、DROP DEFAULT)创建和删除默认对象的方法。

(4) 掌握系统存储过程sp_bindefault、sp_unbindefault绑定和解除绑定默认对象的操作方法,以及sp_helptext查询默认对象信息。

(5) 掌握SQL Server管理平台和Transact-SQL语句(CREATE TABLE、ALTER TABLE)定义和删除约束的方法,并了解约束的类型。

2.实验内容

(1) 为xskc数据库中student表的创建一个规则stu_nj_rule,限制“年级”列所输入的数据为2位0~9的数字。

(2) 创建一个规则stusex_rule,将其绑定到student_info表的“性别”列上,保证输入的性别值只能是“男”或“女”。

(3) 使用系统存储过程sp_help查询stusex_rule规则列表,使用sp_helptext查询stusex_rule规则的文本,使用sp_rename将stusex_rule规则更名为stu_s_rule。

(4) 删除stu_nj_rule规则。

(5) 在student_db数据库中,建立日期、货币等数据类型的默认值对象。 ① 创建默认对象df_date、df_money。

② 输入以下代码,在xskc数据库中创建stufee数据表。

CREATE TABLE stufee

(学号 char(10) NOT NULL, 姓名 char(8) NOT NULL, 学费 money,

交费日期 datetime, ) ③ 使用系统存储过程sp_bindefault将默认对象df_money、df_date分别绑定在stu_fee表的“学费”、“交费日期”列上。

④ 输入以下代码,在stufee表进行插入操作:

INSERT INTO stufee(学号,姓名) VALUES('0001','刘卫平')

INSERT INTO stufee(学号,姓名,学费) VALUES('0001','张卫民',$120) INSERT INTO stufee(学号,姓名,学费,交费日期) VALUES('0001','',$110,'2006-5-12')

分析stu_fee表中插入记录的各列的值是什么?

马东

分析:三条记录中学号和姓名都有,第一条未记入学费,交费日期,使用默认值。第二条交费日期使用默认值。

⑤ 完成以下代码,解除默认对象df_char的绑定,并删除默认对象。按同样的方式,删除默认对象df_date、df_money。

(6) 在xskc数据库中student表,为出生日期添加属性值约束(CHECK),约束名为ck_bday,其检查条件为:出生日期>'1988-1-1'。

使用ALTER TABLE语句的DROP CONSTRAINT参数项删除为student表所建的约束ck_bday。

(7) 为xskc数据库的SC学期成绩表添加外键约束(FOREIGN KEY),要求将“学号”设置为外键,参照表为student表,外键名称为fk_sid。