用户位置应该如何存储在数据库中?是否需要user_Country_state_city
表?有没有人有更好的设计,那么下面列出的是什么?存储国家,州,市SQL设计
User
表:
user_Country_state_city
:
ID | CountryID | StateID | CityID
0 | 0 | 0 | 0
Country
:
ID | Country Name
0 | United States
State
:
ID | Country ID | State
0 | 0 | Michigan
City
:
ID | State ID | City
0 | 0 | Detroit
OR
User
表:
ID | User | CountryID | StateID | CityID
0 | John | 0 | 0 | 0
Country
:
ID | Country Name
0 | United States
State
:
ID | Country ID | State
0 | 0 | Michigan
City
:
ID | State ID | City
0 | 0 | Detroit
因此,例2我只用cityID创建,城市表就会提及国家和州。你是这个意思吗? – 2015-04-05 00:52:51
@LeslieJones - 在第二个例子中,您仍然有三个来自'User':'CountryId','StateId'和'CityId'的引用。我相信戈登建议在'User'中只有'CityId'。想想它是什么意思。用户是否可以选择仅隶属于一个国家或必须指定州和城市?如果是这样,你为什么要允许用户排到意大利,曼尼托巴,莫斯科?如果你只允许一个城市,并用它来定位国家,那么你就排除了这个问题。 – HABO 2015-04-05 02:12:55
这是一个很好的观点,我明白你的意思。 – 2015-04-07 23:08:08