由于关系数据库不支持直接继承并且外键只能引用一个表,因此我不得不即兴提出一个解决方案(我认为这不是唯一的或其他)。
在我的关系数据库中有 entityA,entityB1 和 entityB2 实体。entityB1 和 entityB2 代表相似的现实生活对象,但具有不同的属性编号,如跑车和家用车。假设 entityA 可以与两个实体创建“购买”关系。通常它可以用 2 个单独的关系来完成,它们有 2 个单独的表的外键。
这是我的解决方案,我创建了仅具有属性 B_ID 的实体 B。当有一条记录插入到 entityB1 或 entityB2 时,记录的主键也将 entityB 作为 B_ID 插入。这样,我尝试用 a 间接引用 entityB1 和 entityB2单身关系。
你能建议我更好的方法吗,因为我需要使用额外的连接来访问 entityB1 和 entityB2 的属性?