我对如何设计关于关系的数据库感到困惑。
我的困惑是用户 - >之间的关系。位置和地点 - >地点。我不确定我的想法是否正确。
设计具有ManyToMany关系的数据库(用户,位置)和(地点,位置)是否正确?
答案 0 :(得分:0)
对于多对多关系,您应该在中间有一个"表,它只引用相关表的主键。在您的情况下,您有一个USERS
和LOCATIONS
的表格:
USERS:
pkUsers, userName, userPhone ... etc.
LOCATIONS:
pkLocation, street, city ... etc.
其中pkUsers
和pkLocation
是主要的自动增量ID
中间的表应该是USERLOCATIONS
,有两个字段:
USERLOCATIONS
fkUsers, fkLocations
(其中' fk'代表外键)
现在,当链接位置和用户时,只需将其主键添加到表中即可。
您可以对RESTAURANTS
或任何其他多对多的表执行相同操作。