《实验七数据完整性实验26203.pdf》由会员分享,可在线阅读,更多相关《实验七数据完整性实验26203.pdf(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、实验七:数据完整性实验 实验目的:加深对数据完整性的理解。实验内容:数据库的完整性设置。实验步骤:可视化界面的操作方法:一、实体完整性 1将 student 表的“sno”字段设为主键:在表设计界面中,单击左边的行选定块,选定“sno”字段,单击工具按钮设置主键。如图 1 所示:图 1 1 将“sc”表的“sno”和“cno”设置为主键:在表设计界面中,单击并按住 Ctrl 键拖动左边的行选定块,选定 sno 和 cno 字段,单击工具按钮设置主键。如图 2所示:图 2 二、域完整性 3.将“ssex”字段设置为只能取“男”,“女”两值:在表设计界面,点击鼠标右键CHECK约束,添加约束,添加
2、 CK_student_sex 名称,然后在约束表达式框中输入“ssex in(男,女)”。如图 3 所示。图 3 三、参照完整性 4.将“student”表和“sc”表中的“sno”字段设为参照:打开“sc”表的设计界面,点击工具栏按钮,在弹出的属性(properties)对话框中点击“新建”按钮,在“主键表(Primary key table)”下拉框中选择“student”表,在其下的字段选择框中选择“sno”,在“外键表(Foreign key table)”下拉框中选择“sc”表,在其下的字段选择框中选择“sno”,单击关闭即可。见图 4。图 4 命令方式操作方法:一、实体完整性 1
3、将“student”表的“sno”字段设为主键:当“student”表已存在则执行:当“student”表不存在则执行:注:可用命令“drop table student”删除“student”表 2.添加一身份证号字段,设置其惟一性.(注:操作前应删除表中的所有记录)3.将“sc”表的“sno”和“cno”设置为主键:当“sc”表已存在则执行:当“sc”表不存在则执行:二、域完整性 4.将“ssex”字段设置为只能取“男”,“女”两值:当“student”表已存在则执行:当“student”表不存在则执行:5.设置学号字段只能输入数字:6.设置身份证号的输入格式:7.设置 18 位身份证号的
4、第 7 位到第 10 位为合法的年份(1900-2050)三、参照完整性 9.设置男生的年龄必须大于 22,女生的年龄必须大于 20.10.将“student”表和“sc”表中的“sno”字段设为参照:当“sc”表已存在则执行:当“sc”表不存在则执行:四、完整性验证 1 实体完整性:在“student”表数据浏览可视化界面中输入学号相同的两条记录将会出现错误如图 5 所示:图 5 或者在命令窗口输入下面两条命令也会出现错误提示:insert into student values(95003,张三,男,24,CS,422229X)insert into student values(9500
5、1,李四,女,21,CS,422229)图 6 下面的语句用来验证“sc”表中的实体完整性:insert into sc values(95002,10,65)insert into sc values(95002,10,90)图 7 2.域完整性:使用下面的语句验证“ssex”字段的域完整性:insert into student values(95009,张匀,大,20,CS,422229X)3参照完整性:使用下面的语句“验证”sc 表中的“sno”字段的域完整性(假设 student 表中没有学号为“95998”的学生记录):insert into sc values(98998,10,98)思考:建立课程的实体完整性,和课程号 cno 的参照完整性;实验小结: