我有一个小型数据库,里面有数百种不同类型的资源(例如,医疗、教育和研究)。每种资源都需要按其所在的区域进行标识。一些资源服务于多个地区。我需要能够通过它的类型和区域来定义每个资源。
由于一个地区将拥有许多资源,并且一个资源可以为多个县提供服务,我想我应该在它们之间建立一个连接表,对吧?
我的问题是,我应该为每个资源类型都有一个连接/链接表吗?我是否应该有一个education_resources、regions表,并用连接表education_regions将它们链接起来?并对其他类别做同样的事情?
发布于 2011-05-18 21:39:16
使列对于Resource表中的所有资源都是通用的。子类型表只有特定于每个子类型表的列。

发布于 2011-05-18 21:32:02
如果您添加了其他资源类型,则创建名为education_resources和medical_resources的表可能会使您很难扩展数据库。相反,您可以将表设置为:
Resource_Type (resource_type_id, resource_type_name)
Resource_Region (resource_region_id, resource_region_name)
Resource_counties (resource_county_id, resource_county_name)
Resources (resource_id, resource_type_id,...)
Resource_Region_Map (resource_region_id, resource_id)
Resource_County_Map (resource_county_id, resource_id)这对你来说是可行的,还是会让事情变得更复杂?
https://stackoverflow.com/questions/6045317
复制相似问题