sql - MySQL 数据类型 : int versus enum

标签 sql mysql database database-design

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

编辑:

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

最佳答案

如果你想将它限制为这 3 个值,那么 ENUM 确实可能是最好的。

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

关于sql - MySQL 数据类型 : int versus enum,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4057928/

相关文章:

sql - 使用相同的 currval 重命名其他模式中的序列

mysql - 使用 MySQL 连接四个表并从其中两个获取值

php - 在 SQL 语句中使用标题大小写

.net - 数据架构和数据缓存;在内存数据库中是个坏主意?

php - 计算按要求标记的项目以及另一个表中缺失或部分存在的项目

mysql - SQL select true if 日期比较

sql - 我如何获得最高工资行(按国家/地区分组)

mysql - 合并两个没有公共(public)字段的 COUNT 总计

php - 通过表从数据库中删除记录

MySQL:如何列出所有无权访问现有数据库的用户