数据库的完整性是指数据的正确性和相容性。
数据的正确性是指数据是符合现实世界语义、反映当前实际状况的;
数据的相容性是指数据库的同一对象在不同关系表中的数据是符合逻辑的;
数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据;
为维护数据库的完整性,数据库管理系统必须能够实现如下功能:1、提供定义完整性约束条件的机制 2、提供完整性检查的方法 3、进行违约处理
实体完整性
一、实体完整性定义:PRIMARY KEY(主码)
1、单属性构成的码有两种定义主码方法 :
①定义为列级约束条件
②定义为表级约束条件
2、多个属性构成的码只有一种定义方法:定义为表级约束条件
定义为列级约束条件
eg: 在建立student表时进行实体完整性约束采用在列级定义主码
CREATE TABLE Student
( Sno CHAR(9) PRIMARY KEY, /*在列级定义主码*/
Sname CHAR(20)
Ssex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20)
);
定义为表级约束条件
eg: 在建立student表时进行实体完整性约束采用在表级定义主码
CREATE TABLE Student
( Sno CHAR(10),
Sname CHAR(20)
Ssex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20),
PRIMARY KEY (Sno) /*在表级定义主码*/
);
多属性情况:定义为表级约束条件
eg: 在建立sc表时进行实体完整性约束只能采用在表级定义主码
CREATE TABLE SC
( Sno CHAR(10),
Cno CHAR(4),
Grade SMALLINT,
PRIMARY KEY (Sno