西华大学数据库实验报告(四)

上传人:飞****9 文档编号:144226358 上传时间:2020-09-06 格式:DOC 页数:6 大小:102KB
返回 下载 相关 举报
西华大学数据库实验报告(四)_第1页
第1页 / 共6页
西华大学数据库实验报告(四)_第2页
第2页 / 共6页
西华大学数据库实验报告(四)_第3页
第3页 / 共6页
西华大学数据库实验报告(四)_第4页
第4页 / 共6页
西华大学数据库实验报告(四)_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《西华大学数据库实验报告(四)》由会员分享,可在线阅读,更多相关《西华大学数据库实验报告(四)(6页珍藏版)》请在金锄头文库上搜索。

1、第4次作业数据完整性约束一、环境运行SQL Server,已创建名为student数据库、“学生信息”表、“课程”表、“学生成绩”表。(参考作业二)二、实训内容(1)在“学生信息”表上添加主键约束。最后删除主键约束。use studentgoalter table 学生信息_蒲强林add constraint PK_学生信息_学号 primary key(学号)go运行结果截图:use studentgoalter table 学生信息_蒲强林drop constraint PK_学生信息_学号go运行结果截图:(2)在“学生信息”表中添加“身份证号码”字段,对该字段定义唯一键约束(插入几行记

2、录看效果)。最后删除唯一键约束。use studentgoalter table 学生信息_蒲强林add 身份证号码 nchar(18) uniquego运行结果截图:use studentgoinsert 学生信息_蒲强林values (001,张三,男,18,计算机系,18288888888,5113211993)insert 学生信息_蒲强林values (002,李四,男,19,数学系,18200000008,5113211993)go运行结果截图:再次插入身份证号码为“5113211993”的学生信息时,出现唯一键冲突。use studentgoalter table 学生信息_蒲强

3、林drop constraint UQ_学生信息_蒲强林_882AE7177D582703go运行结果截图:(3)对“学生信息”表中的“年龄”定义检查约束,要求年龄在18-25之间,但对已有不符合约束的数据不进行检查(插入几行记录看效果)。use studentgoalter table 学生信息_蒲强林with nocheckadd constraint CK_学生信息_年龄 check(年龄 between 18 and 20)go运行结果截图:use studentgoinsert 学生信息_蒲强林values (001,张三,男,11,计算机系,18288888888,51132119

4、93)insert 学生信息_蒲强林values (002,李四,男,19,数学系,18200000008,5113211889)go运行结果截图:当添加不满足检查约束的 学生信息时,发生冲突。(4)在“学生成绩”表中的“分数”字段定义检查约束,让分数范围在0-100之间(插入几行记录看效果)。最后删除检查约束。use studentgoalter table 学生成绩_蒲强林with nocheckadd constraint CK_学生成绩_分数 check(分数 between 0 and 100)go运行结果截图:use studentgoinsert 学生成绩_蒲强林values (

5、3120081,101,86) insert 学生成绩_蒲强林values (3120081,102,155)go运行结果截图:当添加不满足检查约束的学生成绩时,发生冲突。use studentgoalter table 学生成绩_蒲强林drop CK_学生成绩_分数go(5)对“学生信息”表中的“性别”定义默认约束(插入几行记录看效果)。use studentgoalter table 学生信息_蒲强林add constraint DF_学生信息_性别 default 男 for 性别go运行结果截图:use studentgoinsert 学生信息_蒲强林values (3,王五,defa

6、ult,18,计算机系,1821111118,5333211993)insert 学生信息_蒲强林values (4,李三,default,19,数学系,18200000008,4413211993)go运行结果截图:(6)在“学生成绩”表中为“课程号”字段建立一个带有级联更新功能的外键,其主键是“课程”表的“课程号”字段,当更新“课程”表中的“课程号”时,同时更新“学生成绩”表中的“课程号”数据(修改几行记录看效果)。use studentgoalter table 学生成绩_蒲强林add constraint FK_学生成绩_学号 foreign key(课程号)references 学生

7、课程_蒲强林(课程号) on update cascadego运行结果截图:use studentgoselect *from 学生成绩_蒲强林goupdate 学生课程_蒲强林set 课程号 = 0001where 课程号 = 0000001goselect *from 学生成绩_蒲强林go运行结果截图:(7)在“学生成绩”表中为“课程号”字段建立一个带有级联删除功能的外键,其主键是“课程”表的“课程号”字段,当删除“课程”表中的某一行记录时,同时删除 “学生成绩”表所有这门课程的成绩数据(删除几行记录看效果)。use studentgoalter table 学生成绩_蒲强林add con

8、straint FK_学生成绩_课程号1 foreign key(课程号)references 学生课程_蒲强林(课程号) on delete cascadego运行结果截图:use studentgoselect *from 学生成绩_蒲强林godelete 学生课程_蒲强林where 课程号 = 0001 or 课程号 = 0000002 or 课程号 = 0000003 or 课程号 = 0000004goselect *from 学生成绩_蒲强林go运行结果截图:二、作业小结总结建立数据完整性的方法和步骤。掌握并理解如何使用约束、默认、规则完成数据完整性的建立。体会数据完整性的作用和地位。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号