我有一个表格ItemGroup
,它有两列,例如ItemID
,ItemGroupID
。
因此,当插入此表时(已经使proc我无法更改),没有约束来避免脏数据插入。
正确的数据:
ItemID ItemGroupID
1 10
2 11
错误的数据
ItemID ItemGroupID
1 10
1 11
2 11
值为1和11的输入错误。
答案 0 :(得分:3)
首先从表中删除错误的数据然后执行下面的脚本,一旦执行下面的脚本,表将不允许这样的错误数据。
ALTER TABLE ItemGroup
ADd UNIQUE un_const(ItemID, ItemGroupID);
答案 1 :(得分:0)
使用复合(两列)主键创建一个主表,并在ItemGroup表中创建复合外键ON ItemID,ItemGroupID并使用复合主键引用它。