MySQL数据完整性(实体完整性、域完整性)

数据完整性: 为保证插入到数据库中的数据是正确的,防止用户输入错误的数据 分为实体完整性、 域完整性 、参照完整性 (下节再说)
(1)实体完整性:
实体指的是表中的一行,一行记录对应一个实体 ,通过主键实现
主键:关键字(primary key);特点:不能为null,并且唯一。
逻辑主键(推荐):例如ID,不代表实际的业务意义,只是用来唯一标识一条记录(推荐)

	eg: create table person(
	id int primary key auto_increment,
	name	varchar(20) not null,
	age int);

业务主键:例如username,参与实际的业务逻辑。

eg: create table goods(
goods_id 	varchar(20) primary key,
goods_name 	varchar(20) not null);

(2)域(列)完整性:
必须符合某种数据类型或约束。
1)数据类型包括(长度等);
2)约束包括( 非空约束 not null,唯一约束 unique)。

eg:	 create table student(
id int primary key auto_increment,
name varchar(20) not null,
idcard varchar(20) unique);

猜你喜欢

转载自blog.csdn.net/qq_39062888/article/details/89159751