MySQL删除外键定义的方法

数据库 MySQL
MySQL数据库中的外键如果我们不需要了,就可以删除掉外键定义,下文对该方法进行了详细的介绍,如果您感兴趣的话,不妨一看。

MySQL外键在定以后,如果我们不再需要这个外键,可以进行删除操作,下面就为您介绍MySQL删除外键定义的方法,供您参考。

不知道大家有没有发现,在定义外键的时候articles.member_id外键比articles.category_id子句多了一个CONSTRAINT fk_member ?
这个fk_member就是用来实现MySQL删除外键用的,如下所示:

  1. mysql> ALTER TABLE articles DROP FOREIGN KEY fk_member;  
  2. Query OK, 1 row affected (0.25 sec)  
  3. Records: 1    Duplicates: 0    Warnings: 0 

这样articles.member_id外键定义就被删除了,但是如果定义时没有指定CONSTRAINT fk_symbol (即外键符号)时该怎么实现MySQL删除外键呢?别急,没有指定时,MySQL会自己创建一个,可以通过以下命令查看:

  1. mysql> SHOW CREATE TABLE articles;  
  2. +———-+————————————+  
  3. | Table      | Create Table                         |  
  4. +———-+————————————+  
  5. | articles | CREATE TABLE `articles` (  
  6.     `article_id` int(11) unsigned NOT NULL auto_increment,  
  7.     `category_id` tinyint(3) unsigned NOT NULL,  
  8.     `member_id` int(11) unsigned NOT NULL,  
  9.     `title` varchar(255) NOT NULL,  
  10.     PRIMARY KEY    (`article_id`),  
  11.     KEY `category_id` (`category_id`),  
  12.     KEY `member_id` (`member_id`),  
  13.     CONSTRAINT `articles_ibfk_1` FOREIGN KEY (`category_id`) REFERENCES `categories` (`id`)  
  14. ENGINE=InnoDB DEFAULT CHARSET=latin1            |  
  15. +———-+————————————+  
  16. 1 row in set (0.01 sec)  
  17.  

可以看出articles.category_id的外键符号为articles_ibfk_1,因为就可以执行以下命令实现MySQL删除外键定义:

  1. mysql> ALTER TABLE articles DROP FOREIGN KEY articles_ibfk_1;  
  2. Query OK, 1 row affected (0.66 sec)  
  3. Records: 1    Duplicates: 0    Warnings: 0 

 

 

 

【编辑推荐】

MySQL外键的相关语法

取得MySQL表信息的语句

mysql UPDATE语句的使用方法

mysql插入Clob字段的实例

常见MySql字段的默认长度

 

责任编辑:段燃 来源: 互联网
相关推荐

2010-11-22 09:43:07

MySQL定义外键

2010-10-09 10:04:48

MySQL定义外键

2010-10-19 17:28:08

SQL SERVER外

2010-09-03 11:52:41

SQL删除

2010-10-08 11:52:29

2011-05-12 14:33:37

MySQL外键

2010-10-13 17:07:46

MySQL删除重复记录

2010-09-13 09:23:28

SQL中多表删除

2010-10-14 11:21:03

删除MySQL用户

2010-11-23 14:26:02

MySQL删除重复记录

2010-05-17 16:10:39

MySQL数据库

2019-11-05 08:20:13

MySQL数据库外键

2010-10-13 15:20:00

mysql-bin.0

2010-09-25 13:16:51

SQL Server外

2022-03-29 06:27:04

网络保险网络安全

2010-11-10 11:37:29

SQL Server删

2010-10-14 14:43:45

MySQL联表查询

2010-09-13 14:05:09

sql server外

2010-09-08 13:14:57

SQL删除约束

2010-09-25 11:50:47

sql server外
点赞
收藏

51CTO技术栈公众号