【发布时间】:2016-07-03 22:55:29
【问题描述】:
我有一个 Orders 表,其中有一个 resellerID 列作为 Nullable 整数。在大多数记录中,resellerID 是 NULL,而有时它包含一个与 Resellers 表相关联的整数,该表包含 resellerID 和 resellerName 列。 p>
当我尝试添加两个 resellerID 之间的关系时,我收到以下错误:
- Unable to create relationship 'FK_Orders_Resellers'.
The ALTER TABLE statement conflicted with the FOREIGN KEY constraint "FK_Orders_Resellers". The conflict occurred in database "sales", table "dbo.Resellers", column 'resellerID'.
问题是Orders.resellerID 列的可空性质吗?这是一个糟糕的设计选择吗?我应该怎么做才能像专业人士一样修复?
数据库是由一位离开公司的程序员设计的,我可能想修复它。
谢谢。
编辑:即使Orders.resellerID 列仅包含 NULL 值,也会发生错误。
【问题讨论】:
-
您能否确认每个 ResellerID 在订单表中都有一个关联的 ID?如果有一个 ResellerID 与 Orders ResellerID 列不匹配,则添加约束将失败。
-
目前
Orders.resellerID列只包含NULL值,同样出现错误。
标签: sql-server database