簡體   English   中英

變量值約束檢查

[英]Constraint check with variable values

我有一個名為TEST的表:

PAR                    CHLD                   
---------------------- ---------------------- 
1                      2                      
1                      3                      
1                      4                      
2                      5                      
3                      6        

PARCHLD列構成一個復合主鍵。

我的要求是,如果要更新CHLD列中的值,則該列應僅接受該列中的任何現有值。

這將失敗,因為值7不在CHLD列中:

UPDATE TEST SET CHLD = 7 WHERE PAR = 3;

這應該成功,因為值4在CHLD列中

UPDATE TEST SET CHLD = 4 WHERE PAR = 3;

請注意,我不具有固定值的檢查約束,因為我不知道表設計期間的值列表。

創建另一個表,例如CHILDREN,其中包含有效值(2,3,4,5,6)。 然后,將TEST表中的參照約束添加到CHILDREN。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM