我目前有3个表格,用于存储有关世界上所有主要城市,与这些国家相对应的每个地区/州以及这些州/地区中的每个城市的信息。有关地址,城市,国家数据的规范化问题
现在我有大约6其他表在我的数据库如用户或组织表需要完全相同的5列:地址,郊区,城市,州/地区,国家。所以我想知道,如果这是一种'良好'的规范化实践,也许使用一个'Location'表来存储这5条信息,那么Users或Organizations表就会有一个location_id来引用。
好主意还是坏主意?我也在考虑使用包含home_phone,business_phone,mobile_phone,email_address的相同原则的“联系人”表,而不是在6个表中的每个表中都有相同的5列。
任何意见赞赏。非常感谢!
我唯一担心做这种方式是,用户不能只选择一个国家和/或地区/国家。一些“城市”<40,000人不在我的数据库中,因为全球有10,000多人,并且在查询时会减慢速度。此外,用户或组织可能在城镇而不是城市。然后,如果他们在下拉列表中找不到他们的城市,他们将无法选择国家或地区,因为它不会映射回位置表。 – zuallauz 2011-04-21 00:44:41
我的网络应用程序当前的工作方式是用户在下拉菜单中选择一个国家,它使用AJAX显示该国家/地区的所有区域的另一个下拉菜单,然后该下拉菜单再次使用AJAX让用户选择该地区/州的城市。我想要做的是让这些组织按国家,州/地区或城市搜索,这样当用户访问该网站时,他们可以在他们想要的区域找到这些组织。如果他们无法在该城市找到该组织,那么他们需要能够按地区进行搜索,并且即使它是一个小城镇,也应该找到它。 – zuallauz 2011-04-21 00:45:10