数据完整性: 为保证插入到数据库中的数据是正确的,防止用户输入错误的数据 分为实体完整性、 域完整性 、参照完整性 (下节再说)
(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);