我正在构建一个表来记录消息。我需要注意消息何时发送以及消息是否已成功传递。
在 ENUM
有两个像这样的 boolean
字段:
| sent | delivered |
| true | false |
还是纯粹是风格选择?
最佳答案
在您的示例中,两组值似乎相互依赖。
例如,如果消息未发送
,则该消息不能delivered
。
使用多个 boolean 字段可以存储不正确的值组合。
我建议您使用一个字段来存储状态。该字段可以是连接到状态表 (discussed frequently) 的枚举或整数外键。
话虽如此,如果字段彼此独立,则使用 boolean 字段是完全可以接受的。
关于mySQL 使用枚举而不是两个 boolean 字段有优势吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28623645/