MySQL删除外键约束问题
当我们在一个表中添加字段约束的时候:
ALTER TABLE product ADD CONSTRAINT product_fk FOREIGN KEY(category_id) REFERENCES category(id);
会认为我的外键约束名称为product_fk, 然后当我们想删除时:
ALTER TABLE product DROP FOREIGN KEY product_fk;
会出现以下的错误:
<e>Query: alter table product drop foreign key product_fk
Error Code: 1025
Error on rename of '.\web_day09\product' to '.\web_day09\#sql2-2330-1' (errno: 152)
这是因为字段的外键约束名并不是product_fk 。我们在数据库中执行一下命令:
SHOW CREATE TABLE product
控制台会显示
Table Create Table product
CREATE TABLE `product` (
`pid` varchar(32) NOT NULL,
`pname` varchar(40) DEFAULT NULL,
`price` double DEFAULT NULL,
`category_id` varchar(32) DEFAULT NULL,
PRIMARY KEY (`pid`),
KEY `category_id` (`category_id`),
CONSTRAINT `product_ibfk_1` FOREIGN KEY (`category_id`) REFERENCES `category` (`cid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
从建表语句中我们发现外键约束名称是:
product_ibfk_1
然后我们再执行外键删除操作
alter table product drop foreign key product_ibfk_1
0 row(s) affected
原文出处:https://blog.csdn.net/qq_35604488/article/details/90573415
MySQL删除外键约束问题的更多相关文章
- 备忘:MySQL中修改表中某列的数据类型、删除外键约束
-- MySQL中修改表中某列的数据类型 ALTER TABLE [COLUMN] 表名 MODIFY 列名 列定义; -- 删除外键约束 SHOW CREATE TABLE 表名; -- 复制CON ...
- MySQL 建立外键约束
http://www.jzxue.com/shujuku/mysql/201109/06-8742.html MySQL 建立外键约束的语法太晦涩难懂了, 不得不记下笔记. 1. 在建表时建立外键 C ...
- MySQL删除外键定义的方法
MySQL外键在定以后,如果我们不再需要这个外键,可以进行删除操作,下面就为您介绍MySQL删除外键定义的方法,供您参考. 不知道大家有没有发现,在定义外键的时候articles.member_id外 ...
- oracle 删除外键约束 禁用约束 启用约束
oracle 删除外键约束 禁用约束 启用约束 执行以下sql生成的语句即可 删除所有外键约束 Sql代码 select 'alter table '||table_name||' drop con ...
- sqlserver创建和删除外键约束
x先找出约束名字然后删除它我给个例子 --测试环境--主表create table test1(id int primary key not null,value int)insert test1 s ...
- mysql 设置外键约束时如何删除数据
Mysql中如果表和表之间建立的外键约束,则无法删除表及修改表结构 解决方法是在Mysql中取消外键约束: SET FOREIGN_KEY_CHECKS=0; 然后将原来表的数据导出到sql语句,重新 ...
- mysql设置外键约束开启-关闭
在MySQL中删除一张表或一条数据的时候,出现 [Err] 1451 -Cannot delete or update a parent row: a foreign key constraint f ...
- MySQL数据库--外键约束及外键使用
什么是主键.外键关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键. 比如: 学生表(学号,姓名,性别,班级) 其中每个学生的学号是唯 ...
- MySQL的外键约束:Cascade/Restrict/No action/SET NULL :级联操作
转自:http://blog.csdn.net/cnjsnt_s/article/details/5548280 具体使用时需要参考:http://blog.csdn.net/codeforme/ar ...
随机推荐
- C++中操作符重载的概念
1,下面的复数解决方案是否可行? 1,代码示例: class Comples { public: int a; int b; }; int main() { Complex c1 = {, }; Co ...
- S-Nim HDU 1536 博弈 sg函数
S-Nim HDU 1536 博弈 sg函数 题意 首先输入K,表示一个集合的大小,之后输入集合,表示对于这对石子只能去这个集合中的元素的个数,之后输入 一个m表示接下来对于这个集合要进行m次询问,之 ...
- P2562kitty猫基因
这道题是安徽NOI省选题,但是难度并没有那么难. 这道题是一个字符串的递归题,有很多大佬用线段树来写的(我也想学线段树,lowbit当头一棒).题意为全部相同则输出B或A,不同则分成长度相同的两个子串 ...
- HNUSTOJ-1437 无题
1437: 无题 时间限制: 1 Sec 内存限制: 128 MB提交: 268 解决: 45[提交][状态][讨论版] 题目描述 tc在玩一个很无聊的游戏:每一次电脑都会给一个长度不超过10^5 ...
- CVE-2016-8655,af_packet Linux 內核通殺提權漏洞淺析
簡單寫一下思路 這個東西需要namespace方面的支援, 首先open socket , 一連串路徑(packet_set_ring()->init_prb_bdqc()->prb_se ...
- js防抖和节流优化浏览器滚动条滚动到最下面时加载更多数据
防抖和节流,主要是用来防止过于平凡的执行某个操作,如浏览器窗口变化执行某个操作,监听某个input输入框keyup变化,瀑布流布局时Y轴滚动,图片加载. js函数的防抖 经过一段事件才执行某个操作,如 ...
- [七月挑选]frp初使用
title: frp初使用 先starfatedier/frp,再开工. 什么是frp? frp is a fast reverse proxy to help you expose a local ...
- XIB约束布局问题(通过优先级改变界面布局)
需要注意的是,只能修改可选约束的优先级,也就是说: 不允许将优先级由小于1000的值改为1000 不允许将优先级由1000修改为小于1000的值 例如,如果将优先级由250修改为1000,则会抛出异常 ...
- 封装自己的framework静态库
ios中我们写的代码有时不愿意让别人看到,可能对它进行封装,生成一个静态库如典型的.a,还有一种就是和 苹果自带的库一样的后缀名为.framework的库,个人推荐使用.framework,因为.a不 ...
- 安装SQL2005数据库服务时报错处理方法
运行一个脚本,以管理员身份运行: net stop winmgmt c: cd %systemroot%/system32/wbem rd /S /Q repository regsvr32 /s % ...