弱实体是否总是暗示其父实体的 ID 依赖性?
Does a weak entity always imply ID dependency of its parent entity?
我正在尝试映射此处描述的这种关系:
"Teams play games. A team plays up to 40 games a season. Each game is played by 2 teams. You must keep track of the score for each team in a game. Teams may never play a game, but if a game is scheduled then it must have 2 teams play in it."
这里的实体是团队和游戏。两者都有一个与实体相关联的 ID,即 teamID 和 gameID。常识告诉我游戏应该是一个弱实体,因为没有团队就没有游戏。但是,如果游戏有自己的唯一 ID,这是否意味着它不是弱实体?
另外,我如何为实体游戏创建关系 table?如果正好有 2 支球队参加一场比赛,Game 中的外键是什么?我会在 table 中只有一个 teamOneID* 和一个 teamTwoID* 吗?
弱实体集不是依赖于另一个实体集而存在的。弱实体集是不能通过自身属性识别的实体集,其标识依赖于与常规实体集的关系。如果 Game
有自己的代理标识符,则它是一个常规实体集。
依赖关系而存在的概念叫做全员参与。有关详细信息,请参阅我对 的回答。
至于命名你的外键列,我看到很多设计使用 homeTeamID
和 awayTeamID
,尽管如果两支球队都在外地比赛,角色的分配是随意的。对称关系会给数据库设计带来困难。如果没有打破对称性的规则,您的查询将必须检查任何给定 teamID 的两个字段,这会使查询复杂化并且效率低下。我之前使用的一种方法是将较低的值存储在 teamOneID
中,将较高的值存储在 teamTwoID
.
中
我正在尝试映射此处描述的这种关系:
"Teams play games. A team plays up to 40 games a season. Each game is played by 2 teams. You must keep track of the score for each team in a game. Teams may never play a game, but if a game is scheduled then it must have 2 teams play in it."
这里的实体是团队和游戏。两者都有一个与实体相关联的 ID,即 teamID 和 gameID。常识告诉我游戏应该是一个弱实体,因为没有团队就没有游戏。但是,如果游戏有自己的唯一 ID,这是否意味着它不是弱实体?
另外,我如何为实体游戏创建关系 table?如果正好有 2 支球队参加一场比赛,Game 中的外键是什么?我会在 table 中只有一个 teamOneID* 和一个 teamTwoID* 吗?
弱实体集不是依赖于另一个实体集而存在的。弱实体集是不能通过自身属性识别的实体集,其标识依赖于与常规实体集的关系。如果 Game
有自己的代理标识符,则它是一个常规实体集。
依赖关系而存在的概念叫做全员参与。有关详细信息,请参阅我对
至于命名你的外键列,我看到很多设计使用 homeTeamID
和 awayTeamID
,尽管如果两支球队都在外地比赛,角色的分配是随意的。对称关系会给数据库设计带来困难。如果没有打破对称性的规则,您的查询将必须检查任何给定 teamID 的两个字段,这会使查询复杂化并且效率低下。我之前使用的一种方法是将较低的值存储在 teamOneID
中,将较高的值存储在 teamTwoID
.