2013-10-08 29 views
0

我已经开发了一些中小规模的web应用程序,并且我已经制定了一个(可能是坏的)习惯,即将用户设置直接存储在用户表上 - 每列有一个设置值。我这样做是因为它很容易,而且看起来是保持简单的好方法。将用户设置放在db的Users表上会不好?

由于每个用户都会有每个设置,是否有任何理由将用户表中的设置分开?特别是因为不同的设置会有不同的类型?

回答

2

根据我的经验,它取决于应用程序,其体系结构以及您对用户表的期望行为。由于数据库规范化以及一段时间后可能会出现的冗余数据量,将它分离到少数几个表中是一种很好的做法。

某些用户可能具有相似的属性,并且可以将它们映射到第二个表上的相同设置,以显着减少冗余数据。此外,数据库不需要更新具有大量列的记录来进行简单的设置修改,而是更改第二个表上的一个或两个值。

此外,如果您决定在Web应用程序中实施基于角色的体系结构,则对用户有更好的管理。

我建议阅读关于数据库规范化的更多信息。

http://www.studytonight.com/dbms/database-normalization.php

0

我看不出有任何理由为什么它会是坏的,但它可能会因应用而变化。

相关问题