請閱讀我的免責聲明下來之前投票約束,3個FKS有一個空,SQL Server 2012中,DB理論只有
我有如下表。
Inventory (InventoryID (PK), LocationID (FK), ProductID (FK), BookID (FK), Quantity)
我當前的約束強制執行,要麼在BookID
或ProductID
不能爲給定的行空,並且LocationID
不能爲空。
我想要一個強制執行以下操作的約束:LocationID + ProductID + BookID必須是唯一的。換句話說,我不希望書籍或產品在同一地點出現兩次。
要清楚,對於任何記錄,ProductID
或BookID
可以爲空,但不能同時爲空,且LocationID
不能爲空。
免責聲明:
這個問題是完全基於個人的好奇心。結果不會以任何方式影響分級分配。我只是好奇
任何回答這應該足夠的經驗來承擔排除細節
我只是在尋找一個可能的約束,或類似的解決方案。我不在尋找返工
的SQL Server 2013 ??? –
@GordonLinoff這就是所有酷酷的孩子們使用的。 – Xedni
對不起,2012.錯字。 – gravityclown