使用单个或多个数据库表名更好吗?是否有可接受的标准?
我听到过支持和反对的论据,你们有什么想法?
答案 0 :(得分:109)
奇异,所以你可以:
等
答案 1 :(得分:75)
恕我直言,表名应该像客户一样复数。
如果类名映射到Customers表中的一行,则类名应该像Customer一样。
答案 2 :(得分:30)
我喜欢单数名称,但似乎属于少数。
答案 3 :(得分:17)
我个人的理念是,使用复数数据库表名称是多余的,除非您只计划表格包含一行。
答案 4 :(得分:12)
我喜欢使用像Agent这样具有PK名称的单一名称。
但那只是我:o)
答案 5 :(得分:11)
我喜欢使用复数形式,因为一个表包含多个实体,所以对我来说似乎更自然。
Linq to SQL在创建数据实体时将复数表格名称转换为单数。我假设如果他们认为表格名称的复数形式不好,微软就不会实现这个功能。
答案 6 :(得分:9)
在我现在的公司,我们使用Plural作为表名。原因是:如果我们有一个Customers表,我们将每行视为Customer,因此表本身就是一组客户。
答案 7 :(得分:8)
嗯,很明显,您的数据库表名称绝对得到以“标准”方式命名,我将至今任意定义。
首先,所有表名都应以“t_”为前缀。在此之后,StudlyCaps中的单数实体名称,例如, “顾客”。紧接着,这将包含在模式的第一个版本中创建的列数,用于历史目的,后跟下划线,以及数据的精确正常形式; BCNF的“1”,“2”,“3”或“B”。任何更高的正规形式都应用“P”表示。
可接受名称的一些例子是:
t_Customer_6_3
t_Order_5_B
t_OrderLine_4_2
我认为我的观点是,无关紧要,只要该名称具有合理的描述性且命名是一致的。
答案 8 :(得分:5)
最重要的是要保持一致。令人讨厌的是必须记住哪些表是复数,哪些表不是。你的字段名称也一样,选择一个stadard并使用它。不要让穷人的开发者必须确定这个表是否使用person_id或personid或者personid或person $ id等。当你没有标准试图记住哪个表使用时,浪费的时间是惊人的什么。
答案 9 :(得分:4)
没有应该或必须以这种方式或那种方式正确回答这个问题。这取决于数据库和软件的设计者。
至于我,我通常使用单数名称,因为当我做E-R图时,我有一个实体客户,而不是客户,所以我保持不变,以免混淆。
当然,有些框架确实支持某种风格,所以当你注意到这些风格时,你应该最好遵循这些风格。
答案 10 :(得分:2)
每个人都有很多争论,但这一切都归结为你觉得舒服的东西。两者都不对。
真正重要的是你是一致的。选择一个标准并坚持下去,你选择的标准不太重要。
答案 11 :(得分:0)
恕我直言,这并不重要,只要对你和使用数据库的人做任何事情。
我想我下意识地列出了带有s和“选择列表”或外键表和单数的主数据表。
答案 12 :(得分:0)
与许多这类问题一样,最佳答案通常是“一致的”。您可以认为该表代表单个实体,因此应该使用单数名称,或者它包含实体的多个实例,因此它应该是复数。我的建议是翻转硬币并将其与整个数据库一起使用(或坚持已经占多数的惯例)。