欢迎来到天天文库
浏览记录
ID:42428946
大小:1.28 MB
页数:30页
时间:2019-09-14
《《数据库原理与应用》实验模板》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《数据库原理与应用》实验报告学号姓名专业、班实验地点指导教师实验时间实验序号:实验项目名称:完整性约束与触发器实验目的1、认识完整性约束对数据库的重要性2、掌握实体完整性的创建、修改、维护3、掌握域完整性的创建、修改、维护4、掌握参照完整性的创建、修改、维护5、掌握用户定义的完整性的创建、修改、维护6、掌握交互式创建触发器的方法7、掌握使用T-SQL创建触发器的方法8、掌握触发器的执行方法二、实验设备(环境)及要求Virtualpc+SQLServer2005三、实验内容与步骤5.1实体完整性约束(1)交互式为数据库表S创建PRIMARYKEY约束(2)交互式创建数据库表TEST_SC,并创
2、建PRIMARYKEY约束,TEST_SC表的结构定义如下:表名:TEST_SC.包含的列如下:学号:SNOCHAR(2);课号:CNOCHAR(2);成绩:SCORETTNYTNT;主键:(SNO,CNO);(1)用SQL为现有表T在TNO列上创建PRIMARYKEY约束(2)用SQL创建数据库表TEST_C,并以列约束形式创建PRIMARYKEY约束。TEST_C表的结构定义如下:表名:TESTC.包含的列如下:课号:CNOCHAR(2)课名:CNCHAR(10)课时:CTT1NY1NT主键:CNO;主键约束名:PK_TEST_C.(3)用SQL创建数据库表TEST.TC,并以表约束形式
3、创建PRIMARYKEY约束。TEST_TC表的结构定义如下:表名:TESTTC包含的列如下:教师号:TNOCHAR(2)课号:CNOCHAR(2)主键:(TNO,CNO)主键约束名:PKTEST_TC.(4)交互式为现有表TEST_TC中的CNO和TNO列创建“UNIQUE约束”(1)用SQL为现有表C中的CN列创建“UNIQUE约束”(2)交互式为现有表TEST_SC增加新列ID_SC,并创建此列属性为IDENTITY(3)用SQL为现有表TEST_TC增加新列ID_TC,并创建此列属性为IDENTITY.(4)交互式删除现有表TEST_SC的主键PK_TEST_SC并取消ID_SC列的
4、标识属性。(5)用SQL删除表C中CN列的UNIQUE约束UNIQUE_C.5.2域完整性约束(1)交互式为现有数据库表T创建DEFAULT和CHECK约束。耍求:CHECK约束对已有数据不做检查。①性别列SEX的DEFAULT约束:DEFAULT二'男'②PROF列与COMM列Z间限定取值关系的CHECK约束。要求此约束对表T屮已有数据不做检查。(2)用SQL为现有数据库表S创建CHECK约束。耍求:木科生的年龄限制在14〜40岁Z间,此约束对表S中已有数据做检查。(3)用SQL创建一数据库表TEST_S,包含DEFAULT和CHECK约束。表TEST_S的结构定义如表4-2所示。(P77
5、)(4)用SQL删除表T中列PROF和COMM之间的CHECK约束CHECKT.(5)交互式删除表TEST_S中列SEX的DEFAULT约束及列AGE的CHECK约束。5.3参照完整性约束(1)交互式创建表S与表SCZ间的参照关系。表S与表SC通过外键SNO实现参照完整性约束(约束名采用系统默认人子表SC中SNO的取值要参照主表S中SNO的取值。要求:取消“创建中检查现有数据”,选择“级联更新相关字段”。(2)用SQL创建表T与表TCZ间的参照关系。表T与表TC通过外键TNO实现参照完整性约束FK_T_TC:子表TC中TNO的取值要参照主表T中TNO的取值。耍求:取消“创建中检查现有数据”,
6、选择“级联删除相关记录”。(3)创建数据库jxsk中5个表之间的关联关系图。(4)交互式删除表C和表TC之间的参照关系。5.4创建和执行触发器(1)交互式为数据库表S创建一级联更新触发器TRIGGER_S.要求:若修改S表中一学生的学号,则SC表中与该学生相关的学号自动修改。(2)交互式为数据库表SC创建一限制更新触发器TRlGGER_SCo要求:若修改SC表屮以记录的学号,则要检查表S小是否存在与该学号相同的记录,若存在则不许修改,若不存在则可修改。(3)用SQL为数据库表SC创建一触发器Score_SC_TRI.要求:当插入一个记录或修改成绩时,确保此记录的成绩在(T100分Z间。(4)
7、用SQL为数据库表C创建一级联删除触发器TRIGGER_DCo要求:从C表屮删除某课程信息时,同时删除SC表屮与此课程相关的选课记录。5.5修改触发器(1)交互式修改触发器TRIGGER_SO要求:若删除数据库表S中某一个学生的记录信息,则自动删除SC表中与该学生相关的记录信息。(2)用SQL修改数据库表C的触发器TRIGGER_DC。要求:从数据库表C屮删除某课程信息时,同时删除数据库表SC和TC屮与此课程
此文档下载收益归作者所有