gpt4 book ai didi

php - 数据库设计,网站的两类用户

转载 作者:搜寻专家 更新时间:2023-10-30 22:22:10 27 4
gpt4 key购买 nike

我正在制作一个评论类型的网站,我希望有两种类型的用户。一个是大多数人,评论者,而另一个是评论所针对的人。就数据库设计而言,我将如何区分两者。我应该为评论者和评论者设置单独的表格,还是简单地为两者分配不同范围的 ID?

最佳答案

这是典型的父类(super class)型/子类型情况。用户和审阅者都是人,关系偏执狂会说你应该有一个包含所有普通人字段的“人”表。然后,您可以与审阅者表建立显式的一对一外键关系,该表包含审阅者特定的字段和其他审阅者特定表的相关键。您可以通过加入审阅者表来检查某人是否是审阅者。

您当然可以将具有不同数据的其他类型的人添加到此方法中。这是为像我这样喜欢避免空值字段和引用多个表之一的未声明外键的关系偏执狂建模的好方法。 MySQL 骑师会把它全部塞进一个大表中,在 varchar 字段中包含大量空值、魔数(Magic Number)和逗号分隔列表。

如果您知道需求将来不会改变(哈哈!),并且用户和审阅者之间的模式没有区别,只需使用一个 person_type 字段并保持简单。

切勿出于任何原因使用“键范围”。那只是 hackery,只会在几年内为您或其他人带来巨大痛苦的重新编码工作。主键应该没有语义和不变性。

关于php - 数据库设计,网站的两类用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2137538/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com