【发布时间】:2013-05-02 18:13:52
【问题描述】:
如果所有值彼此不同(NULL 除外),是否可以在插入和更新时进行比较?我有 10 列数字,不想为每种可能性写一个 if 语句。
示例:
column_1 | column_2 | column_3
--------------------------------
5 2 4 <- allowed to insert
1 2 1 <- forbidden to insert/update, because there are two '1' in a row
【问题讨论】:
-
你的意思是你想检查每一列的值与其他每一列?即 col1 col2 和 col1 col3... 和 col2 col3 等?为什么?如果不明确比较,你会怎么做?
-
行的每个值都必须与同一行的每个其他值不同
-
也许会创建一个唯一的约束??
-
唯一约束仅对每列起作用,而不是在一行本身中。单行中的值应该彼此不同