(3-4)MySQL 添加/删除约束

目录

1 添加约束

1.1 添加主键约束

1.2 添加唯一约束

1.3 添加外键约束

1.4 添加/删除默认约束

2 删除约束 

2.1删除主键约束

2.2 删除唯一约束

 2.3 删除外键约束

3 参考


1 添加约束

语法结构:ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,...)

1.1 添加主键约束

 ALTER TABLE users2 ADD CONSTRAINT PK_users2_id PRIMARY KEY(id);

添加主键约束前
添加主键约束后

1.2 添加唯一约束

语法结构:ALTER TABLE tbl_name ADD [CONSTRAINT] [symbol] UNIQUE [INDEX | index_type](index_col_name,...);

添加UNIQUE主键约束前
添加UNIQUE主键约束后

1.3 添加外键约束

语法结构:ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...) reference_definition;

添加外键约束

通过SHOW CREATE TABLE users2;

查看是否添加了外键约束

1.4 添加/删除默认约束

语法结构:ALTER TABLE tbl_name ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT }

(1)添加默认约束

首先添加一个字段

ALTER TABLE users2 ADD age TINYINT UNSIGNED NOT NULL;

设置默认值

ALTER TABLE users2 ALTER age SET DEFAULT 15;

设置默认约束前
设置默认约束后

 (2)删除默认约束

ALTER TABLE users2 ALTER age DROP DEFAULT;

删除默认约束

2 删除约束 

2.1删除主键约束

语法结构:ALTER TABLE tbl_name DROP PRIMARY KEY

示例中id是主键,我们要删除主键:ALERT TABLE users2 DROP PRIMARY KEY;

删除主键约束后的users2

2.2 删除唯一约束

 语法结构:ALTER TABLE tbl_name DROP {INDEX|KEY} index_name;

(1)首先查看唯一约束的名字:

SHOW INDEXES FROM users2;

ALTER TABLE users2 DROP INDEX username;

删除username的约束

 删除之后,约束只剩一个:

 2.3 删除外键约束

语法结构:ALTER TABLE tbl_name DROP FOREIGN KEY fk_symbol;

例:删除users2 上的外键约束

(1)首先查看外键约束的名称

SHOW CREATE TABLE users2;

查找约束名称

(2)删除操作

ALTER TABLE users2 DROP FOREIGN KEY users2_ibfk_1;

以上操作删除了外键约束,但是还是存在索引,若要继续删除索引:

ALTER TABLE users2 DROP INDEX pid;

3 参考

慕课网——添加/删除约束

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值