目录
唯一性:定义了逐渐的字段下的数据不能出现重复,一张表格只能存在一个主键约束。非空性:定义了主键字段下的数据不能为空值(null)。
唯一性:同一个表格中可以同时为多个字段添加唯一约束非空性:唯一约束定义的字段下的数据不能出现重复但是可以为空值(null)
只有主表中有数据时外表才能插入数据从表的数据删除之后才能删除主表中的数据
1、为我们的字段添加自动增长列 (如果不加约束条件就不会创建成功)
一、主键约束
唯一性:定义了逐渐的字段下的数据不能出现重复,一张表格只能存在一个主键约束。
非空性:定义了主键字段下的数据不能为空值(null)。
添加主键约束
1、在创建表格的过程中添加主键约束
create table 表名 (id int primary key,name varchar(10),age int);
2、为创建完成的表格添加主键约束
alter table 表名 add primary key(字段名); \\如果给已经创建的表格,添加主键约束时表格中的字段下的数据也要遵主键循约束条件
3、复合主键约束
create table 表名 (id int,name varchar(10),age int,primary key(id,age));
4、删除主键
alter table 表名 drop primary key;
二、唯一约束
唯一性:同一个表格中可以同时为多个字段添加唯一约束
非空性:唯一约束定义的字段下的数据不能出现重复但是可以为空值(null)
添加唯一约束
1、在创建的表格的过程中为字段添加唯一约束
create table 表名 (id int unique,age int,name varchar(20),home varchar(20)); \\unique 可以添加多个
2、为创建完成的表格调价唯一约束
alter table 表名 add unique(字段名1,字段名2); \\可以添加多个字段名
3、特殊情况
添加唯一约束时如果字段是非空,那么字段就会自动升级为主键约束
nou null unique 的优先级低于 primary key
4、唯一约束的删除:
方法一:drop index 字段名 on 表名;
方法二:alter table 表名 drop index 字段名;
三、外键与外键约束
只有主表中有数据时外表才能插入数据
从表的数据删除之后才能删除主表中的数据
1、在创建表格的过程中添加外键约束
主表:create table 表名 (sub_id int primary key,sub_name varchar(20));
外表:create table 表名 (sub_id int,sub_name varchar(20),sub_id int,foreign key(外键字段) references 主键表名(主键字段));
2、在创建完成的表格中添加外键约束
主表:alter table 表名 (sub_id int primary key,sub_name varchar(20));
外表:alter table 表名 add foreign key (外键字段) references 主键表名(主键字段);
3、查看外键名
show create table 表名 \G
4、外键约束的删除
alter table 表名 drop foreign key 外键名; //先用查看创建表格过程的命令查看外键名
四、自动增长列
1、为我们的字段添加自动增长列 (如果不加约束条件就不会创建成功)
create table 表名 (id int unique auto_increment,name varchar(20),age int); \\auto_increment表示自我增长
2、为我们已创建的表格添加自动增长
alter table 表名 modify 字段名 数据类型 auto_increment;
3、修改非空
alter table 表名 modify 字段名 数据类型 not null;
4、修改默认值
alter table 表名 modify 字段名 数据类型 default 默认值;
五、索引
普通索引
1、在创建表格的过程中去创建
create table 表名 (id int,age int,name varchar(20),index 索引名(字段名));
2、表格创建完成后添加索引
create index 索引名 on 表名(字段名);
3、删除索引
drop index 索引名 on 表名;
4、删除主键索引
drop index `primary key` on 表名;
唯一索引
1、在表格创建的过程中创建唯一索引
create table 表名 (id int,age int,name varchar(10),unique index 索引名(字段名));
2、表格创建完成之后添加索引
creat unique index 索引名 on 表名(字段名);
3、删除唯一索引
alter table 表名 drop index 索引名;