0
A
回答
2
它是因为MYSQL实际处理ENUM的方式是由INDEX。
所以要MYSQL ....
('a','a','b','c')
实际上等于
(0,1,2,3)
而且一些原因,以避免它......如果可能的话,特别是如果使用它作为参考字段
相关问题
- 1. 为什么C#允许一个无效的枚举值
- 2. 重新声明枚举
- 3. 为什么Java不允许在方法中定义枚举?
- 4. 声明枚举
- 5. 为什么在枚举声明中使用int?
- 6. 为什么要在C++中使用typedef声明枚举?
- 7. 为什么即使在枚举中没有定义有效值时也允许使用枚举转换
- 8. 为什么我应该在顶层声明枚举?
- 9. 枚举声明点
- 10. 为什么在ID属性中允许声明@ + id
- 11. 为什么`dict_display`允许重复键?
- 12. 为什么@OneToOne允许重复关联?
- 13. 为什么我允许使用不完整的枚举类?
- 14. C#泛型:不允许枚举约束,为什么?
- 15. 为什么Java不允许开启静态枚举?
- 16. PyQt允许枚举值和字符串
- 17. Doctrine枚举类型不允许添加非枚举值吗?
- 18. 这个冒号在枚举声明中做了什么?
- 19. 为什么我必须重新为其声明的类型枚举参数?
- 20. 为什么枚举声明接受短但不是Int16
- 21. 类C++中的枚举声明,在类中枚举的问题
- 22. 有重复的枚举值
- 23. OpenCL中不允许使用变长数组声明 - 为什么?
- 24. 为什么JavaScript在return语句后允许函数声明?
- 25. 在Node.js中声明和使用枚举的枚举
- 26. 为什么枚举包括可枚举
- 27. 在派生类中声明枚举
- 28. 如何在angularjs中声明枚举?
- 29. 在Java bean中声明枚举变量
- 30. 未声明的枚举?
谢谢你的回答。我很清楚发生了什么。但是这并不能解释MySQL为什么不选择这个定义。我也不同意在任何情况下避免ENUM。 – OderWat 2014-11-21 12:03:40