【发布时间】:2010-09-25 04:30:03
【问题描述】:
学术界认为表名应该是它们存储属性的实体的单数形式。
我不喜欢任何需要在名称周围加上方括号的 T-SQL,但我已将 Users 表重命名为单数,永远判刑那些使用该表的人有时必须使用方括号。
我的直觉是保持单数更正确,但我的直觉也是括号表示不受欢迎的内容,例如列名中带有空格等。
我应该留下,还是应该离开?
【问题讨论】:
-
我很惊讶更多的人没有说:这取决于单行代表什么。在单个数据库中,我可能有一个表,其行表示单个小部件,另一个与该表的一对多关系表示行表示许多小部件。不这样做会失去表现力。
-
我只是想在所有这些讨论中补充一点,请注意,表格的形状或形式与类不同。表是特定类型元素的集合,可以对各个属性进行排序、查询等。类是描述特定类型的属性和行为的框架。在 OO 编码术语中,表的关闭表示是对象的集合。(无论您使用什么 ORM)。这是迄今为止该主题上排名最高的谷歌答案,因此尽管问题已关闭,但该页面仍然有价值。
-
我会选择你正在工作的生态系统的常见做法。例如:在 Node.js 中,像 Bookshelf.js 或 Objection.js 这样的 ORM 主要基于“Knex.js”。在“Knex.js”文档中,您会找到复数形式的表名。所以我会在那个领域使用复数。来源:knexjs.org/#Schema-createTable
-
是的,我同意。有一个用户表并将其称为“AppUser”是有意义的,同时拥有一个适用于特定类型用户的规则表并将其称为“UserRules”也是有意义的
-
@Arindam "UserRule" 或 "UsersRule" 绝对不适合作为用户相关规则列表的名称。现在这是一个反对总是使用单数形式的有力论据!
标签: sql sql-server naming-conventions