其他分享
首页 > 其他分享> > 实验3:完整性语言

实验3:完整性语言

作者:互联网

完整性语言实验包含3个实验项目,其中2个必修项目,1个选修项目。该实验的各个实验项目均为验证型实验项目。

实验3.1 实体完整性实验

1.实验目的
掌握实体完整性的定义和维护方法。
2.实验内容和要求
定义实体完整性,删除实体完整性。能够写出两种方式定义实体完整性的SQL语句:创建表时定义实体完整性、创建表后定义实体完整性。设计SQL语句验证完整性约束是否起作用。
3.实验重点和难点
实验重点:创建表时定义实体完整性。
实验难点:有多个候选码时实体完整性的定义。
4.实验过程

创建表时定义实体完整性(列级实体完整性),以创建department,dept_name为主码,定义department的实体完整性,蓝色那行定义了dept_name同时声明其为主码。

在这里插入图片描述

创建表时定义实体完整性(表级实体完整性),同样以创建department1,dept_name为主码,定义department的实体完整性,蓝色那行在表级层次上给出了实体完整性。

在这里插入图片描述

创建表后定义实体完整性,以department2为例,先创建department2,不声明主码,之后在蓝色那两行在创建表后定义了department2中的dept_name属性为主码。

在这里插入图片描述

定义实体完整性(主码由多个属性组成),以创建classroom表为例

在这里插入图片描述

有多个候选码时定义实体完整性,以创建instructor表为例,其中name,salary,dept_name和ID均为候选码,选择ID作为主码,name限制为非空,salary检查工资是否超过29000,dept_name外键引用department的主码。

在这里插入图片描述

删除实体完整性,删除instructor的主码

在这里插入图片描述

增加两条主码相同的记录,验证实体完整性是否起作用,以department为例,插入两条主码相同的记录可以看到会违反实体完整性约束。

在这里插入图片描述

实验3.3 用户自定义完整性实验

1.实验目的
掌握用户自定义完整性的定义和维护方法。
2.实验内容和要求
针对具体应用语义,选择NULL/NOT NULL、DEFAULT,UNIQUE、CHECK等,定义属性上的约束条件。
3.实验重点和难点
实验重点:NULL/NOT NULL, DEFAULT。
实验难点:CHECK。
4.实验过程
(1) 定义属性NULL/NOT NULL约束

定义stu表上的ID和name的NOT NULL属性,如图,当插入null的时候就无法通过

在这里插入图片描述
(2 )定义属性DEFAULT约束

定义stu1表中的tot_cred学分缺省属性值为0,表示学生初始学分为0

在这里插入图片描述
(3)定义属性UNIQUE约束

定义nation表中name属性必须唯一的完整性约束,表示国家名字不能一样

在这里插入图片描述
(4)使用CHECK

使用CHECK定义stu3表中score应该满足的约束。

在这里插入图片描述

Jagger-Q 发布了10 篇原创文章 · 获赞 2 · 访问量 80 私信 关注

标签:语言,实体,定义,主码,实验,完整性,name
来源: https://blog.csdn.net/sinat_40875078/article/details/104099029