我试图找出以下语句的正确约束语法:
“对于给定的站点,必须同时指定Catchment Area和Catchment Height,或者都没有指定它们(即它们都是NULL,或者它们都不是NULL) - 请注意这是一个TABLE级别约束“。
Catchment Area和Catchment Height是我在表中的列。
到目前为止我一直在做的是
这会在“编辑表”框中打开一个名为“检查条件”的新文本部分,我必须在Oracle SQL Developer可以理解的语法中指定约束。
到目前为止,这种方法已经实施了我已经实施的其他约束,但出于某种原因,我无法弄清楚如何说出这个特定的约束。
任何帮助将不胜感激,谢谢。
这一切都发生在Oracle SQL Developer中。
答案 0 :(得分:1)
这是实际的DDL
alter table your_table
add constraint your_table_catchment_ck check
( ( Catchment_Area is not null and Catchment_Height is not null)
or ( Catchment_Area is null and Catchment_Height is null)
)
对于IDE,您只需要使用条件(check
后面的位。注意所有括号!