一尘不染

#1025-将'./database/#sql-2e0f_1254ba7'重命名为'./database/table'时出错(错误号:150)

sql

因此,我试图将主键添加到数据库中的表之一。现在,它具有这样的主键:

PRIMARY KEY (user_id, round_number)

其中user_id是外键。

我正在尝试将其更改为:

PRIMARY KEY (user_id, round_number, created_at)

我在phpmyadmin中通过单击表结构视图中的主键图标来执行此操作。

这是我得到的错误:

#1025 - Error on rename of './database/#sql-2e0f_1254ba7' to './database/table' (errno: 150)

它是带有InnoDB表引擎的MySQL数据库。


阅读 145

收藏
2021-05-05

共1个答案

一尘不染

可能还有另一个带有外键的表,该表引用了您要更改的主键。

要找出导致错误的表,您可以运行SHOW ENGINE INNODB STATUS,然后查看LATEST FOREIGN KEY ERROR部分。

2021-05-05