有任何问题加群讨论,还可以领取精美学习资料噢~
群号:733899823
加群时请备注CSDN~
1.添加主键约束
语法:ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,……)
添加主键约束前表结构
为表tb1的id字段添加主键约束,约束名为pk_tb1_id
ALTER TABLE tb1 ADD CONSTRAINT pk_tb1_id PRIMARY KEY(id);
添加主键约束后的表结构
2.添加唯一约束
语法:ALTER TABLE tb_name ADD
[CONSTRAINT [symbol]] UNIQUE [index | KEY] [index_name] [index_type] (index_col_name,……)
为表tb1的name字段添加唯一约束
ALTER TABLE tb1 ADD UNIQUE (name);
添加唯一约束后的表结构
3.添加外键约束
语法:ALTER TABLE tb_name ADD
[CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,……) reference_definition
先为表tb1添加列tb2_id,在为表tb1的tb2_id 字段添加外键约束,引用表tb2的主键id
ALTER TABLE tb1 ADD FOREIGN KEY (tb2_id) REFERENCES tb2 (id);
添加外键约束后的建表细节
4.添加/删除默认约束
语法:ALTER TABLE tb_name ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}
为表tb1的name字段添加默认约束,值为“笑笑”
ALTER TABLE tb1 ALTER name SET DEFAULT "笑笑";
添加默认约束后的表结构
删除默认约束
ALTER TABLE tb1 ALTER name DROP DEFAULT;
删除默认约束后的表结构
5.删除约束
1)删除主键约束
语法:ALTER TABLE tb_name DROP PRIMARY KEY
删除表tb1的主键约束
ALTER TABLE tb1 DROP PRIMARY KEY;
2)删除唯一约束
语法:ALTER TABLE tb_name DROP {INDEX | KEY} index_name
根据语法可知,我们先得查看唯一约束的索引
语法:SHOW INDEXES FROM tb_name\G (\G表示以网格的形式显示信息)
SHOW INDEXES FROM tb1\G;
由结果得知,唯一约束的索引名称为name
删除表tb1的唯一约束
ALTER TABLE tb1 DROP INDEX name;
3)删除外键约束
语法:ALTER TABLE tb_name DROP FOREIGN KEY fk_symbol
我们先得查看外键约束的名称
SHOW CREATE TABLE tb1;
根据结果可知,外键约束名称为:tb1_ibfk_1
删除表tb1的外键约束
ALTER TABLE tb1 DROP FOREIGN KEY tb1_ibfk_1;
删除外键约束的索引,索引名由上图可知为:tb2_id
ALTER TABLE tb1 DROP INDEX tb2_id;
删除所有约束、索引之后的表结构为