概述
数据完整性:是为了保证插入数据库中的数据是正确的,它防止了用户可能的输入错误;
分类:
域完整性
指数据库表的列(字段)必须符合某种特定的数据类型或约束。例如 NOT NULL。
实体完整性
规定表的一行(每条记录)在表中是唯一的实体。实体完整性通过表的主键来实现。
参照完整性
是指保证一个表的外键和另外一个表的主键对应。
主键:唯一地标识表中的某一条记录的一列或者多列的值;特点:唯一,非空;
约束
primary key :主键约束
unique : 唯一约束
not null : 非空约束
check(字段限定条件) :检查约束
default 字段值 : 默认约束
比如:创建一个学生表
create table student (id int primary key,name varchar(20) unique,age int check(age<0 and age<100),address varchar(30) default '内蒙古');
引用约束(外键约束)
建表的时候添加:
create table t3 (id int primary key,sid int,name varchar(20),constraint sid_FK foreign key(sid) references student(id)); #student外键所在的表,sid是此表的外键
为已创建的表添加
#假设t3表的sid字段没有设置外键
alter table t3 add constraint student_t3_FK foreign key(sid) references student(id);
删除引用约束
alter table t3 drop foreign key student_t3_FK ;
自动增长
关键字:auto_increment
create table t4 (id int primary key auto_increment,name varchar(20));