![](/img/trans.png)
[英]If Foreign Key Not Exist Then Add Foreign Key Constraint(Or Drop a Foreign Key Constraint If Exist) without using Name?
[英]SQL: add a default constraint on foreign key column where foreign key reference does not exist
如果我們嘗試在表中不存在該默認值的外鍵上添加默認值約束,會發生什么?
例子:
Table_Person
有Gender
列作為外鍵Table_Gender
具有值為“1”和“2”的行如果我在Table_Person
for Gender
列中使用默認值 = '3' 設置默認約束,會發生什么?
它會被創建還是拋出錯誤? 原因是什么?
這在很大程度上取決於您使用的具體數據庫系統 (RDBMS)。
對於SQL 服務器:
您可以創建兩個表,包括Table_Person
中的默認約束
您可以將行插入到Table_Person
中,明確定義Gender
的值為 1 或 2
但是,您不能在Table_Person
中插入省略Gender
值的行,因此會得到默認值 3 插入 - 因為這違反了 FK 約束
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.