– 1.添加唯一约束
– 方式1:创建表时指定
use mydb1;
create table user1(
id int,
phone_number varchar(20)unique – 指定唯一约束
);
insert into user1 values(1001,‘123’);
– insert into user1 values(1001,‘123’); --不是唯一会报错
– 在MySQL中,null和任何值都不同,null!= null
insert into user1 values(1001,null);
insert into user1 values(1002,null);
– 方式2:创建表之后指定
– 格式:alter table表名add constraint 约束名 unique(列);
create table user2(
id int,
phone_number varchar(20)unique – 指定唯一约束
);
alter table user2 add constraint uniqueName unique (phone_number);
insert into user2 values(1001,‘123’);
insert into user2 values(1002,‘123’);
– 方式3:删除约束
– 格式:alter table 表名 drop index 列名;
alter table user2 drop index phone_number;
– 默认约束
– 1.创建默认约束
– 方式1:字段名 数据类型 default 默认值;
– 方式2:alter table 表名 modify 列名 类型 default 默认值;
use mydbl1;
create table user1(
id int,
name varchar(20),
address varchar(20)default’北京’ – 指定默认约束
);
insert into user1 (id,name,address)VALUES(1001,‘张三’,‘上海’);
insert into user1 (id,name,address)VALUES(1002,‘李四’,null);
– 零填充约束 zerofill default
create table user2(
id int zerofill,
name varchar(20),
address varchar(20) – 零填充约束
);
insert into user2 VALUES(123,‘李四’,‘上海’);