Mysql 一对多还是一对一,这里用什么?
其实我现在有点糊涂了,看了以后什么时候用1:1,1:n和n:m 首先是一个基本问题:如果我有两张表:Mysql 一对多还是一对一,这里用什么?,mysql,foreign-keys,relationship,Mysql,Foreign Keys,Relationship,其实我现在有点糊涂了,看了以后什么时候用1:1,1:n和n:m 首先是一个基本问题:如果我有两张表: users roles ----- ----- user_id role_id role_id .... .... 并且有一个FK FK_用户角色1,这是n:1多个用户可以有一个角色吗 还有第二个问题: users companies companymembers ----- --------- -------------- user_i
users roles
----- -----
user_id role_id
role_id ....
....
并且有一个FK FK_用户角色1,这是n:1多个用户可以有一个角色吗
还有第二个问题:
users companies companymembers
----- --------- --------------
user_id company_id company_id
user_id
在companymembers中有两个fk:fk_companymembers_Companyies1和fk_companymembers_users1,这里的正确关系是什么?1:1还是1:n 对于第一个,您是对的,它是1:n一个用户只有一个角色,一个角色可以分配给多个用户。对于第二种情况,这是一种n:m关系。一个用户可以是许多公司的成员,一个公司可以有许多用户作为成员。谢谢!所以,如果我想让一个用户只成为一家公司的成员,我应该像对待角色那样做吗?