我的表格包含字段'优先级'。现在我有以下优先考虑'low','medium','high'。
我感到困惑的是:
- 我应该为优先级值创建ENUM类型字段吗?
- 我应该创建TINYINT类型字段并将值存储为1,2,3
醇>
请注意,根据此字段,我需要搜索和排序数据。 此外,此字段会有索引。
答案 0 :(得分:1)
你应该使用ENUM,因为你说你必须搜索/排序,在小int中使用它们会让你进行额外的处理,例如将1,2,3转换回' low',&# 39;中等'高'在展示时。
Enum是这种情况的理想选择
答案 1 :(得分:0)
如果你确定以后没有添加任何优先级,你应该使用ENUM,因为在这种情况下你必须改变表... BUt enum给出一致数据的流量没有插入其他值..
答案 2 :(得分:0)
ENUM 是非标准的MySql扩展名。你应该避免使用它,特别是如果你能以标准方式获得相同的结果。因此,最好使用 tinyint 。