2

我想知道组织用户数据的最佳实践是什么。

我应该将每行的所有用户数据存储在一个表中,还是应该将其切割成更小的块并使用与主键相关的多个表?

例如。

首先,我想记录个人信息,如姓名、职业、位置等。最终,可以选择添加使用历史记录。比如他们填写了多少、哪些调查以及他们评论了哪些文章。

在键入此内容时,对我来说有一个用于评论的表格,一个用于用户名+密码的表格,一个用于个人信息的表格,并随着我的需求的增长不断添加表格......

不过想要一些确认。

4

2 回答 2

7

如果要建立一对多的关系,那么您应该将其拆分,但对于一对一的事情,您不应该这样做。因此,如果用户将拥有多个地址、电话号码、历史记录、朋友等,那么您将拥有一个与客户 ID 相关联的地址表(或电话号码、历史记录或朋友表)。

对于用户名和密码,您不需要单独的表格。

于 2012-06-04T18:03:10.613 回答
1

最佳实践是优化您的数据库,或者您真的想首先组织用户数据,您必须使用一对多关系,因为您可以通过加入不同的表来轻松跟踪整个用户数据

SELECT * FROM user_A a INNER JOIN userdata_B b ON a.id=b.a_id

如果用户包含多个记录,例如名称 name2、occupation1、occupation2、location1、location2 等,那么您必须创建多个表并将此记录填充到这些表中,因为如果您将整个用户数据填充到单个表中,结果会花费很多执行时间

在此之后应用索引.......

于 2012-06-04T19:22:08.697 回答