我有以下表格结构(虚构的,用于演示):
ArticlePrice
------------
Id (int, identity)
Price (float)
SpecialArticlePrice
-------------------
Id (int, identity)
ArticlePriceId (int, FK to AriclePrice.Id)
SpecialPrice (float)
在这些表之间是一个删除约束。
Foo
-----
Id (int, identity)
ArticlePriceId (int, NULL, FKto ArticlePrice.Id)
SpecialArticlePriceId (int, NULL, FK to SpecialArticlePrice.Id)
Price (int)
我想为两个 FK 设置一个删除约束,以防 ArticelPrice 或 SpecialArticlePrice 将被删除,Foo 记录也应该被删除。唯一的合同(在开发者网站上)是,Foo 的记录将只包含一个 FK 关系。
例子:
INSERT INTO Foo (ArticlePrice, SpecialArticlePrice, Price) VALUES (13, NULL, 20.0)
INSERT INTO Foo (ArticlePrice, SpecialArticlePrice, Price) VALUES (NULL, 3, 134.25)
我该如何解决这种情况?
非常感谢你。亲切的问候,丹尼