我在db
中有帖子表帖子可以是草稿,发布和评论,开发人员在db中存储它的最佳和最常用的方法是什么?我应该使用带有这3个值的枚举列类型,还是应该将其存储为每个状态帖子的整数?你会做什么以及如何存储并稍后访问它并在前端显示它?
答案 0 :(得分:2)
我喜欢使用3NF规范化,所以我会使用一个整数并为帖子状态创建一个单独的表,其中包含状态ID作为自动递增的主键,然后在需要显示状态时执行连接。 / p>
答案 1 :(得分:1)
如果您的状态值永远不会改变,请使用enum
。否则使用整数(并在模型类中定义const
变量来表示这些整数的值)。
但是,如果您的状态会有非常频繁的添加/更改/删除,请使用单独的表来存储可能的值。请注意,这会因为连接而不经常更改而降低性能
请参阅:this article和post了解详情。
答案 2 :(得分:1)
在整数exp 0 | 1 | 2的表中,并创建新表post_type
id | yourtable_id | type
0 0 draft
1 1 published
2 2 reviewd
并使用join来获取他们的名字
答案 3 :(得分:1)
我会创建一个新表来保存可用的状态值,并将tinyinteger unsigned autoincrement字段作为id。然后我会使用post表中的id值将状态与帖子相关联。 这是将来维护和更新数据的最佳方式。