MySQL数据类型:int与enum

时间:2010-10-30 08:42:38

标签: sql mysql database database-design

我有许多列只需要存储一些值(例如0,1,2,3)。我应该为这种情况选择什么数据类型?我觉得我应该选择像ENUM('0','1','2')这样的东西。 int会更好(尽管限制较少)?我应该考虑别的东西(比如tinyint)吗?

修改

实际上,在决定数据类型时,我应该考虑哪些一般建议?

2 个答案:

答案 0 :(得分:5)

如果您想将其限制为这三个值,那么ENUM可能是最好的。

但是,如果将来可能需要更多的值,那么TINYINT UNSIGNED可能是更好的解决方案。

答案 1 :(得分:1)

建议使用带有固定集的枚举。如果你想扩展,那么“Alter”基本上应该避免架构改变。

更好地了解choosing datatype

并获取comparison of enum数据类型