1、数据库系统原理 数据完整性 1 实 验 报 告课程名称: 数据库系统原理 实验名称 数据完整性 院 (系): 管理学院 专业班级: 姓 名: 学 号: 指导教师: 张新生 2011 年 6 月 20日一、目的与要求1掌握约束的定义及其删除方法。2掌握规则的创建、使用和删除方法。3掌握默认对象的创建、使用和删除方法。4. 掌握使用触发器实现数据完整性的方法。二、实验准备1了解数据完整性概念。2了解约束的类型。3了解创建约束和删除约束的语法。4了解创建规则和删除规则的语法。5了解绑定规则和解绑规则的语法。6了解创建默认对象和删除默认对象的语法。7了解绑定默认对象和解绑默认对象的语法。8. 了解触发
2、器的一般概念。三、实验内容1建表时创建约束,先创建数据库STUDENT,然后在STUDENT数据库中用CREATE TABLE语句创建表STU1,表结构如下: 列 名 数据类型 长 度 学 号 char 12 姓 名 char 8 性 别 char 2 出生日期 datetime 家庭住址 char 30 备 注 Text 在建表的同时,创建所需约束。约束要求如下:(1)将学号设置为主键,主键名为pk_xuehao。ALTER TABLE STU1 ADD CONSTRAINT PK_student PRIMARY KEY (学号) 图 5.1查询分析器主键设置 图5.2 设置学号为主键(2)
3、为姓名添加惟一约束,约束名为uk_xymy。 ALTER TABLE STU1 ADD CONSTRAINT uk_xymy UNIQUE (姓名)图 5.3查询分析器为表STU1的姓名列建立惟一约束 在查询分析器中检验上面所设置的惟一约束,可依次执行下列两条SQL语句,观察结果。INSERT INTO STU1(学号, 姓名) VALUES (090450108,高庆飞) Go INSERT INTO STU1(学号, 姓名) VALUES (090450108,高庆飞) 图5.4 惟一约束检验 (3)为性别添加默认约束,默认名称df_xybx,其值为“男”。ALTER TABLE STU1
4、ADD CONSTRAINT df_xybx - df_xybx为新定义的默认约束名DEFAULT 男 FOR 性别图5.5“默认属性”对话框(4)为出生日期添加CHECK约束,约束名为ck_csrq,其检查条件为(出生日期01/01/1986)。ALTER TABLE STU1ADD CONSTRAINT ck_csrq - ck_csrq为新定义的检查约束名CHECK (出生日期 01/01/1986) 图5.6设置检查约束图5.6检查约束对话框/在查询分析器中检验上面所设置的外键约束,可执行下列SQL语句,观察结果。INSERT INTO STU1(学号,姓名,出生日期) VALUES(
5、090450107,老大,1985/10/02)图5.7 检验检查约束2在查询分析器中删除上例所建约束。打开企业管理器STUDENT-STU1表设计后按照实验报告一步一进行逐一删除,最后保存就OK了。很简单。3为YGKQ数据库中的JBQK表添加外键约束,要求如下:将缺勤类型设置为外键,其引用表为 QQLX,外键名称为fk_qqlx。ALTER TABLE JBQK ADD CONTRAINT fk_qqlx -fk_qqlx为新定义的外键约束名FOREIGN KEY (缺勤类别)REFERENCES QQLX(缺勤类别)在查询分析器中检验上面所设置的外键约束,可执行下列SQL语句,观察结果。I
6、NSERT INTO JBQK(姓名,职工号,缺勤类别) VALUES (马强,008,5)图5.8 约束检验外键4创建一个qqlx_rule规则,将其绑定到JBQK表的缺勤类型字段上,保证输入的缺勤类型只能是“1”、“2”、“3”或“4”。创建规则 CREATE RULE qqlx_rule AS xb in (1,2,3,4)绑定规则 sp_bindrule qqlx_rule ,JBQK.缺勤类型5删除qqlx_rule规则(注意:规则已绑定到JBQK表的缺勤类型字段上)。解除规则的绑定sp_unbindrule qqlx_rule 删除规则 DROP RULE qqlx_rule6创建
7、一个qqly_def默认对象,将其绑定到JBQK表的缺勤理由字段上,使其默认值为“事假”。 创建默认值RECATE DEFAULT qqly_def -默认对象名为qqly_defAS 事假 绑定默认值 若将默认对象qqly_def绑定到数据表JBQK的缺勤理由字段上,语句如下:sp_bindefault qqly_def,缺勤理由 7删除默认对象qqly_def(注意:默认对象已绑定到JBQK表的缺勤理由字段上)解除默认值的绑定sp_unbindefault BQK.缺勤理由删除默认值DROP DEFAULT qqly_def注意:在删除默认对象前,必须先解除默认值的绑定。四、仪器名称及主要规格(包括量程、分度值、精度等)五、实验结果及分析无论是用企业管理器还是用查询分析器进行数据创建、删除、插入、修改等操作,都可以达到目的,只是对于用户方法不同。在用户表JBQK中都可以看出来,结果正确。六、结论在数据完整性中用查询分析器进行数据约束操作,不仅可以避免输入数据时对事先约束过的数据的错误输入,还可以方便简洁快速地达到目的,只不过查询分析器中使用SQL语句时要特别注意标点符号的输入,再有就是一定要熟练掌握要查询的东西对应使用的SQL语句。七、教师评语和成绩教师签名: 年 月 日:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1