[转帖]ERROR 1091 (42000): Can't DROP 'id'; check that column/key exists_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2904 | 回复: 0   主题: [转帖]ERROR 1091 (42000): Can't DROP 'id'; check that column/key exists        下一篇 
ad222888
注册用户
等级:新兵
经验:66
发帖:134
精华:0
注册:2016-9-25
状态:离线
发送短消息息给ad222888 加好友    发送短消息息给ad222888 发消息
发表于: IP:您无权察看 2018-8-16 14:18:58 | [全部帖] [楼主帖] 楼主

外键删除失败原因分析:

命令:alter table 表名drop foreign key 外键名;报错ERROR 1091 (42000): Can't DROP 'id'; check that column/key exists

注:我的外键是id字段

但是!!

外键名!=字段名

那么,删除外键之前要先查出字段所对应的外键名,用如下命令

mysql>show create table 表名

其中的 CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`id`) REFERENCES `t3` (`id`) ON DELETE CASCADE ON UPDATE CASCADE

指出,字段id对应的字段名是t2_ibfk_1

验证:alter table db2.t2 drop foreign key t2_ibfk_1;

删除成功,如下:

此时查看,t2表中已无外键




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论