表级约束(PRIMARY KEY、FORERGN KRY、UNIQUE、CHECK)

Exisi 2023-01-29 16:08:44
Categories: Tags:
  • 表级约束除了可以删除约束属性外,还可以根据约束名进行删除

 

 

根据约束名进行删除

  • 此语句只能删除已知约束名的约束

语法

ALTER TABLE <tbl_name>

DROP CONSTRAINT [symbol];

 

参数

描述

<tbl_name>

数据表名

[symbol]

约束名

示例

ALTER TABLE student

DROP CONSTRAINT cst_primary;

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

  • 可以使用 SHOW CREATE TABLE 语句查看约束名

 

 

 

删除主键约束

  • 删除主键约束的方法使用 DROP 关键字

语法

ALTER TABLE <tbl_name>

DROP PRIMARY KEY;

 

参数

描述

<tbl_name>

数据表名

示例

ALTER TABLE student

DROP PRIMARY KEY;

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

如果主键设置了自增约束,删除主键会报错,需要先删除自增约束,再删除主键约束

 

 

 

删除外键约束

  • 删除外键约束的方法使用 DROP 关键字,并且需要提供约束名

语法

ALTER TABLE <tbl_name>

DROP FOREIGN KEY [symbol];

 

参数

描述

<tbl_name>

数据表名

[symbol]

外键约束名

示例

ALTER TABLE student

DROP FOREIGN KEY cst_foreign;

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

 

 

 

删除唯一约束

  • 删除唯一约束的方法使用 DROP 关键字和 DROP … ON 语句

语法

ALTER TABLE <tbl_name>

DROP INDEX KEY [symbol];

 

DROP INDEX [symbol]

ON <tbl_name;

 

参数

描述

<tbl_name>

数据表名

[symbol]

约束名

示例

ALTER TABLE student

DROP INDEX KEY cst_index;

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

示例

DROP INDEX cst_index

ON student;

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

 

 

 

删除检查约束

  • 删除检查约束只能通过使用 DROP CONSTRAINT 根据约束名删除