数据库:用户配置文件

时间:2011-06-26 00:46:40

标签: mysql sql database postgresql database-design

将所有用户信息包含在一个表中是不是一个坏主意?拥有users表和user_profiles表是不是一个好主意?

哪种方法最好,为什么?

在什么情况下你会雇用一个/两个表?

3 个答案:

答案 0 :(得分:3)

如果这些表之间的关系是一对一的,我会有一个表。如果关系是一对多(一个用户可以有多个配置文件),那么这些显然应该被拆分。

拆分表的另一个原因可能是权限管理 - DBA更容易将权限限制为一个表并授予另一个表。我仍然会有一个具有受限权限的表和一个列数有限的公共视图。

我继承了一个系统,这两个表在没有充分理由的情况下被拆分。总是加入这些桌子是一件痛苦的事。最后,你最终得到一个观点,并问自己为什么首先进行拆分。

答案 1 :(得分:1)

我通常有一个人员表和一个用户表。 users表包含所有用户信息(用户名,密码(加密)等)。人员表中包含姓名等。

答案 2 :(得分:0)

我同意夏天。我没有看到在同一个表格中包含所有信息的任何问题。

将它全部放在一个表中的好处是,在运行数据库查询时,您不必进行连接等。这意味着您的应用程序运行得更快。