gpt4 book ai didi

MySQL 删除字段;外键错误号 150

转载 作者:可可西里 更新时间:2023-11-01 06:55:57 24 4
gpt4 key购买 nike

MySQL 使用 InnoDB 并删除未使用的外键时出现问题。外键引用了另一个表的 ID。但是,我不需要这个字段。

我已经尝试删除 fk 索引,但它不起作用 - 说它在外键约束中是必需的。并删除该字段,这会给我一个错误:

1025 - 将“./axis/#sql-ad8_1531”重命名为“./axis/Schedule”时出错(errno:150)

该表目前是空的。没有引用此字段的表。关于如何摆脱这个的任何想法?除了创建一个新表?

如果我正确阅读了下面的错误,我就不能删除该列,因为已声明 fk 索引。而且我不能删除索引,因为该列存在。鸡和蛋??

最新的外键错误111004 17:05:40 表轴/时间表外键约束错误:表中没有包含的索引列作为第一列,或数据类型表与引用表中的不匹配或 ON ... SET NULL 列之一被声明为 NOT NULL。约束:, 约束“fk_Schedule_Grp”外键(“idGrp”)引用“Grp”(“idGrp”)在删除时没有操作在更新时没有操作InnoDB:重命名表 axis。到 axisSchedule 失败!

最佳答案

你需要使用

ALTER TABLE table_name DROP FOREIGN KEY constraint_name

这里的 constraint_name 是约束的名称而不是索引。如果您不知道这是什么,可以通过发出 SHOW CREATE TABLE 来了解。它是出现在单词 CONSTRAINT 之后的标识符。

编辑:从您对问题的补充来看,您似乎需要发布

ALTER TABLE table_name DROP FOREIGN KEY fk_Schedule_Grp

关于MySQL 删除字段;外键错误号 150,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7655310/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com