数据完整性是指数据的精确性和可靠性,主要应用于保证数据库中数据的质量。为了防止数据库中存在不符合语义规定的数据。
数据完整性分为四类:
实体完整性(保证表中每一行数据在表中是唯一的)、
域完整性(保证列的值的有效性和正确性(CHECK约束、DEFAULT约束、NOT NULL 约束))、
参照完整性(表之间,多个表数据的一致性与更新的同步性)、
用户定义完整性。
约束就是限制,定义约束就是定义限制条件。
1.主键约束(PRIMARY KEY)
2.唯一约束(UNIQUE)
3.外键约束(FOREIGN KEY)
4.检查约束(CHECK)
5.默认约束(DEFAULT)
6.非空约束(NOT NULL)
创建多列组合主键
USE 学生成绩
GO
CREATE TABLE 期末成绩表
(CONSTRAINT PK_期末成绩 PRIMARY KEY(班级编号,课程编号), --创建多个列组合的主键约束,采用表级约束,这里班级编号和课程编号值是唯一的
学号 char(8) NOT NULL,
班级编号 char(2) NOT NULL,
课程编号 char (8) NOT NULL,
成绩 decimal(4,1) NULL)
GO
上面的代码创建了期末成绩表,执行代码以后,右键表,然后刷新。然后会更新期末成绩表。其中班级编号,课程编号是PRIMARY KEY约束 不允许输入重复值。
这里插入了两行数据进去,便于后面检测主键的功能。
1.新建查询
USE 学生成绩
GO
INSERT INTO 期末成绩表(班级编号,课程编号,学号,成绩)
VALUES ('01','001','0000011','91')
GO
2.执行上面的代码,向表中插入一行数据,其中班级编号和课程编号与表中现有的数据重复,执行代码。
提示不能输入重复值。
(博客是自己学习笔记,不喜勿喷。)