学术界认为,表名应该是存储其属性的实体的单数。
我不喜欢任何需要在名称周围加方括号的T-SQL,但我已经将一个Users表重命名为单数,这永远意味着使用该表的人有时不得不使用括号。
我的直觉是,保持单数更正确,但我的直觉也是,括号表示不需要的东西,比如列名中有空格等。
我该留下还是该走?
学术界认为,表名应该是存储其属性的实体的单数。
我不喜欢任何需要在名称周围加方括号的T-SQL,但我已经将一个Users表重命名为单数,这永远意味着使用该表的人有时不得不使用括号。
我的直觉是,保持单数更正确,但我的直觉也是,括号表示不需要的东西,比如列名中有空格等。
我该留下还是该走?
当前回答
我在之前的任何回答中都没有看到这一点。许多程序员在处理表时没有正式的定义。我们经常以“记录”或“行”的形式直观地交流。然而,除了一些非规范化关系的例外,表通常被设计为使得非键属性和键之间的关系构成集合论函数。
函数可以定义为两个集合之间的叉积的子集,其中键集合的每个元素在映射中最多出现一次。因此,从这个角度产生的术语往往是单数。在涉及函数的其他数学和计算理论(例如代数和lambda演算)中,人们可以看到相同的单数(或至少是非复数)约定。
其他回答
就“标准”而言,其他人给出了相当好的答案,但我只是想补充一下。。。是否可能“用户”(或“用户”)实际上不是表中数据的完整描述?并不是说你应该对表名和特定性太着迷,但也许像“Widget_Users”(其中“Widget”是应用程序或网站的名称)这样的东西会更合适。
表格:复数
用户表中列出了多个用户。
型号:单数
可以从用户表中选择单个用户。
控制器:复数
http://myapp.com/users将列出多个用户。
无论如何,这是我的看法。
可能的替代方案:
重命名表SystemUser使用括号保留多个表名。
IMO使用括号从技术上来说是最安全的方法,尽管它有点麻烦。IMO是一个6个,另一个6打,您的解决方案实际上只是归结为个人/团队偏好。
我在之前的任何回答中都没有看到这一点。许多程序员在处理表时没有正式的定义。我们经常以“记录”或“行”的形式直观地交流。然而,除了一些非规范化关系的例外,表通常被设计为使得非键属性和键之间的关系构成集合论函数。
函数可以定义为两个集合之间的叉积的子集,其中键集合的每个元素在映射中最多出现一次。因此,从这个角度产生的术语往往是单数。在涉及函数的其他数学和计算理论(例如代数和lambda演算)中,人们可以看到相同的单数(或至少是非复数)约定。
指导方针确实如此。这不是“板上钉钉”,这就是为什么你可以选择忽略它们。
我想说,使用多个表名在逻辑上更直观。表毕竟是实体的集合。除了提到的其他选项,我通常在表名上看到前缀。。。
tbl用户tbl此待定tbl其他
我并不是建议这样做,我也看到表名中使用了很多空格,我对此深恶痛绝。我甚至遇到过带有白痴字符的域名,比如?好像说这个字段回答了一个问题。