我有兩個表TableA和TableB。現在TableA有2列:ID &名稱,TableB有3列:ID,名稱,& TableAID。現在有一個來自TableA.ID = TableB.TableAID的外鍵約束。我需要能夠允許TableB.TableAID使用TableA.ID或TableB.ID中的值,因此單個列上有多個外鍵約束,我需要它來允許或者。謝謝!SQL Server 2008中單個列上的多個外鍵約束
2
A
回答
5
這是一個壞設計的明顯跡象。你永遠不需要這樣做,如果你這樣做,那麼你需要重新考慮你的設計。
您不能使字段與兩個不同的FK關聯。
+0
是的,我只能對這些表添加約束,我不能改變設計表格或刪除任何約束。 :( – 2011-04-12 13:59:54
相關問題
- 1. SQL Server 2008外鍵約束錯誤
- 2. 多列外鍵約束上
- 3. SQL Server 2008外鍵約定
- 4. 臨時桌子上沒有外鍵約束? SQL Server 2008
- 5. SQL:創建多個外鍵和約束
- 6. SQL Server中的外鍵約束
- 7. SQL Server 2008中 - 加約束
- 8. SQL Server有條件的外鍵約束
- 9. 對外鍵的SQL Server約束
- 10. 多重約束違反SQL Server 2008 - CodeFirst
- 11. Sql Server 2008檢查約束
- 12. 列約束Sql 2008
- 13. 外鍵約束 - 寫入錯誤表 - SQL Server 2008
- 14. SQL約束:外鍵
- 15. 外鍵約束SQL
- 16. Sql外鍵約束
- 17. SQL Server外鍵約束好處
- 18. 添加約束與多個外鍵
- 19. SQL多個外鍵與多個表上的單個外鍵
- 20. MySQL的多個外鍵約束
- 21. SQL Server的我怎樣才能得到一個外鍵約束
- 22. 分組或多個外鍵約束
- 23. SQL Server 2008中無法刪除約束
- 24. 哪個表存儲有關SQL Server 2008中約束的信息?
- 25. SQL中的複雜外鍵約束
- 26. sql server 2008 - 無外鍵的整數列
- 27. SQL 2008 - INFORMATION_SCHEMA視圖中的外鍵約束
- 28. SQL錯誤外鍵約束
- 29. SQL與外鍵約束
- 30. SQL外鍵約束語法
您可以在TableB.TableAID中使用NULL作爲您應該使用TableB.ID的指示嗎?這意味着你想要粘在那裏的TableB.ID將會是已經在記錄中的那個,這可能不是這種情況。 – DKnight 2011-04-12 15:02:42