gpt4 book ai didi

sql - 一个检查约束还是多个检查约束?

转载 作者:行者123 更新时间:2023-12-01 10:14:39 26 4
gpt4 key购买 nike

关于检查约束越少越好还是更多的任何建议?如果有的话,它们应该如何分组?

假设我有 3 列是 VARCHAR2(1 BYTE) , 每个都是一个 'T'/'F' 标志。我想为每列添加一个检查约束,指定只有字符 IN ('T', 'F')被允许。

我应该有 3 个单独的检查约束,每列一个:

COL_1 IN ('T', 'F')

COL_2 IN ('T', 'F')

COL_3 IN ('T', 'F')

或单个检查约束:
COL_1 IN ('T', 'F') AND COL_2 IN ('T', 'F') AND COL_3 IN ('T', 'F')

我的想法是最好将这三个分开,因为这些列在逻辑上彼此无关。我有一个检查多个列的检查约束的唯一情况是,一个列中的值与另一列中的值之间是否存在某种关系,例如:
(PARENT_CNT > 0 AND PRIMARY_PARENT IS NOT NULL) OR (PARENT_CNT = 0 AND PRIMARY_PARENT IS NULL)

最佳答案

保持分开,它们是不同的列。另外,错误信息会显示失败的检查约束名称,您将更好地知道问题出在哪里。 future 的开发人员会困惑为什么它们都在一起,或者因为它们在不同的列上而不会注意到它们。

关于sql - 一个检查约束还是多个检查约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2457344/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com