问题标签 [mysql-error-1025]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
232 浏览

mysql - 强制 MySql ENUM 类型从一开始就使用 2 个字节

我使用 Enum 数据类型作为在另一个表中作为外键引用的主键。如果我必须向这个枚举值添加一个额外的元素,我使用

在两张桌子上。它工作正常。

我有一个不起眼的例子,我最终从 <255 值增加到更多。在这种情况下,ENUM 需要从 1 字节存储切换到 2 字节存储。那就是它失败的时候。给我

错误 1025 (HY000):将“./TXCAD/#sql-5912_86”重命名为“./TXCAD/EN_TABLE”时出错(错误号:150)

我做了一些研究,发现主表中从 1 字节到 2 字节的转换导致外键数据类型不一致。(如果我从 256+ 值开始,这根本不会发生。我验证了)

有没有办法强制 MySql 从一开始就使用 2 个字节,即使 ENUM() 在创建表期间的值少于 255 个?

使用 MySql - 5.1 InnoDB 表

0 投票
2 回答
6104 浏览

mysql - MySQL #1025 错误

运行此查询时出现 #1025 错误。

SQL查询:

MySQL 说:

这很有趣,因为我在 PHP MyAdmin 中设置了这个查询……我不知道为什么会出现外键错误……我只是想将某些内容从 int 更改为 varchar

任何人都可以帮忙吗?

0 投票
2 回答
7787 浏览

mysql - SQL 外键约束错误 1025 (152)

每次我尝试删除一个名为“countires”的表和一个名为“countries”的字段时,我都会不断收到错误消息。

它说对表“调查”存在 FK 依赖关系,我已多次尝试将其删除但均未成功。

尝试删除国家/地区表后,我现在收到此错误

0 投票
1 回答
6159 浏览

mysql - 删除具有外键的列

在我的带有 inno_db 引擎的 mysql 数据库上,

我有一个带有外键的表。我想删除该列(当然还有外键和相关索引 - 我不需要整个列!)

现在,简单地删除它会产生一个错误:General error: 1025 Error on rename of '.\road_dmy#sql-19d8_2be' to '.\road_dmy\contact' (errno: 150)

听起来这是一个已知问题。 http://bugs.mysql.com/bug.php?id=15317

但无论如何,我应该怎么做才能删除这个专栏?我很确定否则没有人会使用这个数据库

(顺便说一句,我怎么知道上面神秘错误信息的真实细节?)

0 投票
6 回答
29035 浏览

mysql - 在现有 MYSQL 数据库中使用 Alter Table 添加外键时出现问题 - 无法添加!帮助!

我有一个生产数据库,我在其中重命名了几个作为外键的列。显然,根据我的经验,mysql 让这件事变得非常痛苦。

我的解决方案是删除所有索引和外键,重命名 id 列,然后重新添加索引和外键。

这在用于开发数据库的 Windows 上的 mysql 5.1 上效果很好。

我去我的 debian 服务器上运行我的迁移脚本,它也使用 mysql 5.1,它给出了以下错误:

此表中没有与我尝试添加的外键冲突的值。数据库没有改变。外键 DID 之前存在......所以数据很好。更不用说我在服务器上使用了相同的数据库,它在 Windows 上迁移得很好。但是这些相同的外键迁移并没有出现在 Debian 上。

这些列使用相同的类型 - BIGINT (20)

这些名称实际上存在于它们各自的表中。

这些表是innodb。他们已经在其他列中有外键。这不是一个新的数据库。

我不能删除表,因为这是一个生产数据库。

我的数据库中的表“原样”:

这是 innodb 状态:

如果我尝试从“company_to_module”中删除索引,则会收到以下错误:

这是我的 innodb 变量:

我还想补充一点,当我在添加外键时,mysql 损坏了我的数据库并销毁了它。我不得不从备份中重新加载才能重试。

帮助?:/

0 投票
4 回答
4794 浏览

mysql - 在mysql中更改具有外键约束的表主键

我有一个 mysql 数据库,它有一组表一个表有一个复合键作为主键和一个外键。以下是表定义。

但是现在我需要在这个现有的表中添加一个新列并将其作为主键。我使用以下查询进行了尝试。

但它显示以下错误

我尝试了几个在互联网上找到的答案,但无法正确解决。有人可以帮我解决这个问题。提前致谢。

0 投票
5 回答
28840 浏览

mysql - 无法删除外键

我想在我的表中删除外键但进入此错误消息

0 投票
1 回答
1017 浏览

mysql - 它不会让我丢弃外键

我正在尝试从表中删除外键,但在 mysql 中出现以下错误:

1025 - 将“./mobile_app/Question”重命名为“./mobile_app/#sql2-4517-15515”时出错(错误号:152)

这个错误是什么意思,如何解决?

下面是我试图删除外键的代码:

以下是问题表详细信息(此表中没有行):

下面是 Option_Table 的详细信息:

此表中有 24 行,下面是一个示例:

0 投票
1 回答
5489 浏览

mysql - 删除列在 MySQL Workbench 中不起作用

这更像是一个元问题,而不是我需要的实际帮助,但我在其他地方找不到有关它的信息。今天,我尝试从数据库中删除两个表,并在尝试时收到“外键约束失败”的错误消息。没问题,只需删除外键即可。所以我的查询如下所示:

我收到另一条错误消息,上面写着“错误代码:1025。将'./Database/#sql-461_somerandomnumbers'重命名为'./Database/mytable'(errno:150)时出错”

我想我会使用内置的右键单击,在编辑表中删除列,因此我使用它并意识到它也使用“删除索引”。因此,我将代码更改为与 Workbench 完全一样:

现在,这与 Workbench 完全一样,只是当我自己键入时它不会执行(错误消息上方),但是当我允许 Workbench 执行查询时它工作正常。


所以,我的问题是,当我无法复制/粘贴时,为什么 Workbench 能够执行放置查询?

0 投票
0 回答
353 浏览

msg - 消息 102,级别 15,状态 1,第 1 行 '200' 附近的语法不正确

从员工中选择 *,其中薪水 < 全部 (200,500)

得到错误:

消息 102,级别 15,状态 1,第 1 行“200”附近的语法不正确。