【发布时间】:2011-08-05 11:47:57
【问题描述】:
您好,使用 SQL Server 2008,
我为棒球联盟建立了一个小型数据库,在创建 Teams(PK: TeamID) 和 GameSchedule(PK: GameID, FK1: HomeTeamID, FK2: AwayTeamID) 之间的关系时遇到问题
我想在 GameSchedule HomeTeamID、AwayTeamID 和 Teams(TeamID) 之间建立关系
每当我尝试这样做时,我都会收到错误消息:(TeamID 已经是 Teams 中的主键)
“团队”表已成功保存
“游戏时间表”表
- 无法创建关系“FK_GameSchedule_Teams”。
ALTER TABLE 语句与 FOREIGN KEY 约束“FK_GameSchedule_Teams”冲突。冲突发生在数据库“sll_2009”、表“dbo.Teams”、列“TeamID”中。
【问题讨论】:
-
您是否为这些关系指定了删除和更新规则?
-
您可能有不符合您尝试添加的约束的现有数据。
-
更多信息:我创建了一个空的 playpen 数据库,我能够创建两个表和所有关系,问题是在真实的数据库中,我有现有的记录,它不会'不要让我建立关系。
-
我没有为这些关系指定删除或更新规则,我会在 GameSchedule 级联删除中指定。
-
删除 On Delete 和 On Update 规则清除了我的错误。
标签: sql-server entity-relationship foreign-key-relationship