为啥当我尝试将主键设置为无符号时出现 errno150
Posted
技术标签:
【中文标题】为啥当我尝试将主键设置为无符号时出现 errno150【英文标题】:why I get errno150 when I try to set a primary key as unsigned为什么当我尝试将主键设置为无符号时出现 errno150 【发布时间】:2016-10-05 16:01:44 【问题描述】:我在 phpmyadmin 上创建了几个表,现在我返回它们并尝试编辑它们并将它们的主键设置为 unsigned
。
主键的类型为INT,长度为11,默认为None,无排序规则,Not Null,AutoIncreament为true,无Attributes。
我尝试将属性更改为无符号,但出现错误
查询错误:1025 英镑 - 错误或重命名 './mydatabase/£sql-de8a2_daa21b' 到 './mydatabase/mytable' (errno: 150)
为什么我会得到这个,我该如何解决这个问题?
谢谢
【问题讨论】:
***.com/questions/4080611/…的可能重复 【参考方案1】:我确定您无法编辑外键关系的原因,因为另一个表的外键引用了您尝试更改的主键。
使用SHOW CREATE TABLE [table_name]
显示约束名称。
使用ALTER TABLE [table_name] DROP FOREIGN KEY [foreign_key_constraint_name];
更改表以删除foreign_key_constraint_name
之后您可以编辑列名并再次应用外键
关系。
【讨论】:
以上是关于为啥当我尝试将主键设置为无符号时出现 errno150的主要内容,如果未能解决你的问题,请参考以下文章
MySQL:为啥将主键与不使用索引的随机生成的数字进行比较?
为啥当我尝试在 MariaDB 数据库上创建此函数(使用点数据类型)时出现此错误?
为啥当我尝试在 ios 7.1 sdk、xcode 5.1 中调用 deallocate 或 release 时出现错误?