唯一性约束:
drop table t_user;
create table t_user(id int , name varchar(255) unique);
unique 代表唯一性约束,即name的值唯一。
多个字段添加unique:
drop table t_user;
create table t_user(id int , name varchar(255),unique(id name));
注意:这里是id和name两个约束不能同时相同。
主键约束:
create table t_user(id int primary key, name varchar(255));
insert into values(1,'zhangsan');
此时ID为主键,不能重复也不能为空
其中 primary key为主键约束,id 为主键字段,添加的值1 为主键值
一张表的主键只有一个
生成主键约束时,在 后面加 auto_increment,主键值会自增,从一开始间隔为一
drop table if exists t_user;
create table t_user( id int primary key auto_increment,name varchar(255));
insert into t_user(name) values('j');
insert into t_user(name) values('r');
insert into t_user(name) values('g');
insert into t_user(name) values('j');
insert into t_user(name) values('j');
select * from t_user;
结果:
外键:
如图,cno在下面这张表中为外键约束,用于连接两张表
其中t_student中的cno引用了t_class中的cno,t_s称为字表,t_c称为父表
外键值可以为null,
外键引用某个子段时,该字段 必须具有唯一性