假设一个特定的国家有很多景点(纪念碑、公园、博物馆),当然一个特定的景点可以存在于许多州。
就逻辑 ERD 模型而言,M:N 关系之间应使用联结表。
但是,简单地使用两个相邻表的 PK 作为连接表的 PK 就足够了吗?
也就是说,您有一个 COUNTRY、SIGHTS 和 SIGHT_TYPE 表,其中 SIGHTS 是联结表。假设一个特定的国家可以有多个博物馆(即 MUSEUM 是一个 SIGHT_TYPE),这意味着 SIGHTS 表中的每条记录都不能唯一标识,不是吗?
即假设 MUSEUM 的 SIGHT_TYPE_ID 为 2,GERMANY 的 country_id 为 22。对于多个博物馆,如果上述情况属实,您不会发生这种情况吗?22 2 - 博物馆 A 22 2 - 博物馆 B
因此,在这种情况下,使用代理键(例如 SIGHT_ID)作为唯一标识符是绝对必要的吗?
换句话说,通常使用两个相邻表的 PK 作为连接或组合表的 PK,但是这些情况是否例外?
谢谢