我的数据库中有两个表:
用户和UserTypes之间的关系多对多..因此我将创建一个具有UserTypeID(FK)的UserID(FK)的表,但我试图找到该表的最佳名称...是否有任何建议?
答案 0 :(得分:4)
我建议您遵循编码指南的任何命名约定 - 您确实拥有它? - 表示这些类型的表。如果您没有指南,那么这样的事情可能有效:
Users_UserTypes
答案 1 :(得分:1)
我认为一个好的做法就是把它称为“Users_UserTypes”,可能以你为此目的发明的一些传统代码字为前缀。无论如何,这就是我的申请中发生的事情。
答案 2 :(得分:1)
UserTypes表中还有其他“type”吗?有几个条目?如果只有少数,并且它不包含任何其他数据,那么我将简单地对该表进行非规范化,并且根本没有单独的连接器。
那是:
Users:
ID | First Name | Last Name
-----------+------------------+--------------------
123 | John | Smith
456 | Jane | Doe
UserTypes:
UserID | Type
-----------+----------------
123 | student
123 | specialist
456 | teacher
“类型”列不必是字符串,它可以是映射到代码中的枚举或您喜欢的任何内容的整数。
国际海事组织,没有太多的事情可以使事情变得非常正常,以至于你总共有500张桌子都在一起......
答案 3 :(得分:1)
另一种方法(除了Users_UserTypes)将是UserTypes_for_Users
它有点不那么传统,但恕我直言更容易理解
答案 4 :(得分:1)
User,UserType(我将每个表命名为单数)和... UserTypeMap
答案 5 :(得分:0)
我们对多对多表使用Table1_x_Table2命名约定。
这使事情变得非常清楚,并指出了表格的交叉引用性质: Person_x_Company Package_x_Product User_x_UserType
对于自我关系表,例如员工对经理,我们有一个Person_x_Person表,其中包含“relation_type”和“priority”列,以允许每位员工拥有主要经理和次要经理的多位经理。