简洁的表名与可读性

时间:2015-08-11 22:03:28

标签: database-design

所以我的数据库有UsersProjects。我们正在使用一个单一的约定,我们有

User
Project
ProjectUserMapping

到目前为止一切顺利。但是现在我们有很多表与存储与特定项目/用户配对相关的各种数据有关(是的,我知道我们可以在一个表中执行以下所有操作,但我们也没有选择)

ProjectUserIntegerAttribute
ProjectUserStringAttribute
ProjectUserDecimalAttribute

所以我们提出了很多ProjectUserXXX表名。有些开发人员不想摆脱ProjectUser前缀,大概是为了使代码更易于编写/读取,但我反对,因为有一些表(尽管它们属于少数)那不是" ProjectUser"组合,而且没有前缀,你没有准确描述表格?

我能想到的唯一幸福的媒介是使用" PU"前缀作为缩写。我是否仍然坚持使用某种前缀?

1 个答案:

答案 0 :(得分:0)

我是否还要坚持使用某种前缀?

我知道我愿意。因为明天,有人需要.test { background: #cccccc; width: 200px; height: 200px; display: block; } //wot .derp {color:#ff0000;} .derp {color:#00ff00;} //wot .derp {color:#0000ff;} UserIntegerAttribute

如果字母“P”和“U”极可能总是与“Project”和“User”相关联,则将它们缩短为PU可能是一种解决方法。但如果你明天有“产品”表并且需要ProjectStringAttribute,请不要回到这里对我大喊大叫。

对于持久性名称(如全局变量或数据库表),我个人更喜欢精度。具有局部范围的东西可以很短。我的迭代器往往是 i,j k

最后,您实际需要多久键入一次表名?可能不常见,因此节省输入表名的时间不太可能对生产力产生显着影响。