创建表加入约束
常见的约束
- 非空约束,not null
- 唯一约束,unique key
- 主键约束,primary key
- 外键约束,foreign key
- 自定义检查约束,check(不建议使用)
非空约束,not null
非空约束,针对某个字段设置其值不为空,如:学生的姓名不能为空
drop table if exists t_student;
create table t_student(
student_id int(10),
student_name varchar(20) not null,
sex char(2) default ‘m’,
birthday date,
email varchar(30),
classes_id int(3) );
insert into t_student(student_id, birthday, email, classes_id) values(1002, ‘1988-01-01’, ‘qqq@163.com’, 10) // 报错
唯一约束,unique key
唯一性约束,它可以使某个字段的值不能重复,如:email不能重复:
drop table if exists t_student;
create table t_student(
student_id int(10),
student_name varchar(20) not null,
sex char(2) default ‘m’,
birthday date,
email varchar(30) unique,
classes_id int(3)
)
insert into t_student(student_id, student_name , sex, birthday, email, classes_id)
values
(1001,‘zhangsan’,‘m’, ‘1988-01-01’, ‘qqq@163.com’, 10)
主键约束,primary key
每个表应该具有主键,主键可以标识记录的唯一性,主键分为单一主键和复合(联合)主键,单一主键是由一个字段构成的,复合(联合)主键是由多个字段构成的
外键约束,foreign key
外键主要是维护表之间的关系的,主要是为了保证参照完整性,如果表中的某个字段为外键字段,那么该字段的值必须来源于参照的表的主键