什么是在数据库中保存地址的最佳数据模型设计,一个设计如下:
- 表
Countries
- 表
Provinces
(FK至Countries
( - 表
Cities
(FK至Provinces
( - 表
Addresses
(FK至Cities
(,Main Street专栏 - 表
Customer
- 表
CustomerAddresses
(FK至Customer
和FK到Addresses
(
但是,这种设计的问题是,某些客户的地址没有城市,并且指定了一个客户,或者指定了一个客户城市,但没有指定省和国家/地区。
这个问题的最佳设计是什么?
1- Table Countries
2- Table Provinces (fk to countries)
3- Table cities (fk to Provinces)
4- Table Addresses (fk to cities,fk to Countries,FK to Provinces,FK to Customers)
5- Table Customer
现在Addresses
表将是这样:
{PK_ID,Customer_ID,Country_ID,Province_ID,City_ID,StreetAddress}
通过这种方式,您可以轻松地将客户地址保存到Addresses
表