MySQL 复习(一):建表约束
-- 添加:alter table table_name add primary key (字段)
-- 删除:alter table table_name drop primary key
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
-- alter table 表名 add primary key(字段名)
alter table user add primary key(id)
-- alter table 表名 modify 字段 字段类型 primary key
alter table user modify id int primary key
describe user # 查找约束
alter table <表名> drop primary key;
alter table user drop primary key;
describe user # 查找约束
-- 添加:alter table table_name add constraint 约束名 foreign key(外键列)
-- references 主键表(主键列)
-- 删除:
-- 第一步:删除外键
-- alter table table_name drop foreign key 约束名
-- 第二步:删除索引
-- alter table table_name drop index 索引名
# 约束名(外键名)和索引名一样
-- 班级表
create table class(
id int primary key,
name varchar(20)
);
-- 学生表
create table student(
id int primary key,
name varchar(20),
class_id int,
foreign key(class_id) references class(id) #建表前添加外键约束
);
describe user # 查找约束
-- alter table 表1
-- add FOREIGN KEY(表1的关联列) 或者 add constraint 外键名 FOREIGN KEY(表1的关联列)
-- references 表2(表2的关联列);
alter table table_name
add FOREIGN KEY(column_name)
references table_name(clolumn_name);
describe user # 查找约束
-- alter table 表
-- drop FOREIGN KEY 表的外键名(可以通过 #show create table 表名;# 命令行查找外键名);
alter table student
drop FOREIGN KEY student_fk_name;
describe user # 查找约束
-- 添加:alter table table_name modify 列名 int auto_increment
-- 删除:alter table table_name modify 列名 int
-- 3.1.1 建表前添加自增约束
drop table if exists user;
create table user(
id int primary key auto_increment, # auto_increment
name varchar(20)
);
describe user # 查找约束
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
0
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
1
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
2
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
3
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
4
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
5
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
6
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
7
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
8
create table user(
id int primary key, # primary key
name varchar(20)
);
describe user # 查找约束
9
-- alter table 表名 add primary key(字段名)
alter table user add primary key(id)
-- alter table 表名 modify 字段 字段类型 primary key
alter table user modify id int primary key
describe user # 查找约束
0
-- alter table 表名 add primary key(字段名)
alter table user add primary key(id)
-- alter table 表名 modify 字段 字段类型 primary key
alter table user modify id int primary key
describe user # 查找约束
1
-- alter table 表名 add primary key(字段名)
alter table user add primary key(id)
-- alter table 表名 modify 字段 字段类型 primary key
alter table user modify id int primary key
describe user # 查找约束
2
-- alter table 表名 add primary key(字段名)
alter table user add primary key(id)
-- alter table 表名 modify 字段 字段类型 primary key
alter table user modify id int primary key
describe user # 查找约束
3
-- alter table 表名 add primary key(字段名)
alter table user add primary key(id)
-- alter table 表名 modify 字段 字段类型 primary key
alter table user modify id int primary key
describe user # 查找约束
4
-- alter table 表名 add primary key(字段名)
alter table user add primary key(id)
-- alter table 表名 modify 字段 字段类型 primary key
alter table user modify id int primary key
describe user # 查找约束
5