MySQL--删除表的外键约束,简单易懂。

删除表的外键约束

我们曾在第一章中讲过外键的作用,以及如何创建一个表的外键。建立了外键我们就建立起了两张表的关联关系,那如果我想删除主表呢?为了确保数据库的正确性,我们必须先解除两个表之间的关联关系,那就是删除外键约束啦!让我们先来看看删除外键约束的语法规则。

语法规则为: ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名; 

举个例子: 我们先建立了一个主表country,表结构如下图所示:

然后建立一个有外键约束的子表Mall_products2,让它的键country_id作为外键关联到country的主键id

SQL语句如下:

mysql> CREATE TABLE Mall_products2
    -> (
    -> id INT(11) PRIMARY KEY,
    -> country_name VARCHAR(20) NOT NULL,
    -> country_id INT(11) NOT NULL,
    -> CONSTRAINT prod_country FOREIGN KEY(country_id) REFERENCES country(id)
    -> );
Query OK, 0 rows affected, 2 warnings (0.01 sec)

上述语句成功执行后,在表Mall_products2上添加了名称为prod_country的外键约束,外键字段为country_id,依赖于表country的主键id,从下图中可以看到,已经成功添加了表的外键:

Mall_products2表结构如下图所示:

下面开始删除外键约束,语句如下:

              ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名;

     ALTER TABLE Mall_products2 DROP FOREIGN KEY prod_country;

使用SHOW CREATE TABLE查看表 Mall_products2 的结构,结果如下:

我们可以看到,FOREIGN KEY不见了,外键约束删除成功!

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值