模块特定模式的命名约定

时间:2010-02-27 09:16:38

标签: sql database-design schema

我们的项目由许多模块组成(例如,包含出勤,身份,报告等模块的人力资源管理系统......)

这里表示的所有表格的命名约定是什么。

您是否建议为所有模块使用相同的前缀(例如hrms_ide_user,hrms_rep_reports ..)或类似ide_user,rep_reports ...

我们的产品旨在支持所有主要数据库(Oracle,DB2,MySQL,Postgres)。所以我想小心表格或列限制,如果有的话。

1 个答案:

答案 0 :(得分:1)

在所有表上使用相同的前缀(即hrms)是reduandancy,并且仅在共享数据库时才有用。

如果模块是插件并且非常流畅,那么为表添加前缀可能是明智的,但如果你可以避免使用前缀,我认为它可以使设计更容易阅读。

我使用了前缀和非前缀,我更喜欢非前缀,因为它往往会导致更好的设计(避免rep_user和ide_user存储类似的数据)。

如果你有前缀我会同意这些应该是固定数量的字符和 理想情况下与系统或子系统ID相关。

最后一点是,我认为不将多个表名与单数混合是明智的 - 根据您的喜好使用其中一个。 (即用户和报告或用户和报告)。