Oracle SQL 带 IF 条件的约束
Oracle SQL Constraint with IF condition
我需要用这个条件创建一个约束 If column_1 = 'Y' then column_2 is not null.如果 column_1 等于 'Y',我需要使 column_2 不为空。在其他情况下,您可以在 column_2
中插入或不插入值
您可以将其表示为:
check (column_1 <> 'Y' or column_2 is not null)
注意:此版本假定 column_1
不是 NULL
,但可以轻松调整逻辑来处理该问题。
或者,或者:
check (not (column_1 = 'Y' and column_2 is null) )
我需要用这个条件创建一个约束 If column_1 = 'Y' then column_2 is not null.如果 column_1 等于 'Y',我需要使 column_2 不为空。在其他情况下,您可以在 column_2
中插入或不插入值您可以将其表示为:
check (column_1 <> 'Y' or column_2 is not null)
注意:此版本假定 column_1
不是 NULL
,但可以轻松调整逻辑来处理该问题。
或者,或者:
check (not (column_1 = 'Y' and column_2 is null) )