数据完整性
1.1 数据库的完整性
用来保证存放到数据库中的数据是有效的,即数据的有效性和准确性
确保数据的完整性 = 在创建表时给表中添加约束
完整性的分类:
实体完整性(行完整性);
域完整性(列完整性);
引用完整性(关联表完整性);
主键约束:primary key
唯一约束:unique [key]
非空约束:not null
默认约束:default
自动增长:auto_increment
外键约束:foreign key
建议这些约束应该在创建表的时候设置,多个约束条件之间使用空格间隔
create table student(
studentno int primary key auto_increment,
loginPwd varchar(20) not null default '123456',
studentname varchar(50) not null,
sex char(2) not null,
gradeid int not null,
phone varchar(255) not null,
address varchar(255) default '学生宿舍',
borndate datetime,
email varcahr(50)
);
1.2 实体完整性
实体:表中的一行(一条记录)代表一个实体(enity)
实体完整性的作用:标识每一行数据不重复
约束类型:
主键约束(primary key)
唯一约束(unique)
1.2.1 主键约束(primary key)
注:每个表要有一个主键
特点:数据唯一,且不能为空
//第一种添加方式
create table student(id int primary key,name varchar(50));
//第二种添加方式 优势在于可以创建联合主键
create table student(id int,name varchar(50),primary key(id));
//第三种添加方式
create table student(id int,name varchar(50));
alter table student add primary key(id);
1.2.2 唯一约束(unique)
特点:数据不能重复,主键约束是数据不能为空,唯一约束允许一次为空