7

我试图在一个表(misc)中删除一个外键(id),它是表(main)中的主键(id)。数据库名称(xxx)

alter table misc drop FOREIGN KEY id

我收到此错误

#1025 - 将 '.\interview#sql-edc_27' 重命名为 '.\interview\misc' 时出错(错误号:150)

4

2 回答 2

14
SHOW CREATE TABLE misc ;

您不能使用列名删除外键,运行上述查询以找出正确的名称,例如misc_ibfk_1

嘿,这是这个名字:

alter table misc drop FOREIGN KEY  misc_ibfk_1
于 2013-10-29T20:50:22.243 回答
2

就我而言,有必要进行 3 步过程(我的表名为“articulos”,难以删除的索引是“FK_Departamento_ID”)

  1. 为了知道表的名称,我执行了:

    SHOW INDEX FROM articulos;
    
  2. 这条语句解决了问题(#1025, errno: 150),但是索引仍然在表中

    ALTER TABLE articulos DROP FOREIGN KEY FK_Departamento_ID;
    
  3. 下面的语句终于消灭了索引

    DROP INDEX FK_Departamento_ID ON articulos;
    
于 2015-09-11T15:58:39.937 回答