【发布时间】:2011-03-12 01:39:43
【问题描述】:
我使用 Enum 数据类型作为在另一个表中作为外键引用的主键。如果我必须向这个枚举值添加一个额外的元素,我使用
ALTER TABLE <table> MODIFY <colName> ENUM(<OLD VALUES>, NEW VAL);
在两张桌子上。它工作正常。
我有一个不起眼的例子,我最终从
错误 1025 (HY000):将“./TXCAD/#sql-5912_86”重命名为“./TXCAD/EN_TABLE”时出错(错误号:150)
我做了一些研究,发现主表中从 1 个字节到 2 个字节的转换导致外键数据类型不一致。 (如果我从 256+ 值开始,这根本不会发生。我验证了)
有没有办法强制 MySql 从一开始就使用 2 个字节,即使 ENUM() 在创建表期间的值少于 255 个?
使用 MySql - 5.1 InnoDB 表
【问题讨论】:
标签: mysql enums mysql-error-1025