【发布时间】:2020-10-16 15:10:23
【问题描述】:
我目前正在使用 SQLite Studio,但在为 char 类型的列添加检查约束时遇到了问题。该列是长度为 5 的唯一字符代码列表。我希望检查约束在代码中的任何位置不包含字母 S 、 I 和 Z 。这是我目前写的代码,
CHECK(length(VIN) = 5) AND substr(VIN, 1, 5) NOT IN ('S','I','Z')
上面的代码什么都不做,字母仍然可以包含在代码中,所以我决定反其道而行之,虽然要长一些。
(length(VIN) = 5) AND substr(VIN, 1, 5) IN ('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'、'J'、'K'、'L'、'M'、'N'、'O'、'P'、'Q'、'R'、'T'、'U'、'V ', 'W', 'X', 'Y')
在上面的代码中,检查约束有效,但约束“不允许”插入 5 个长度的代码。在这个问题上的任何帮助都会很棒。提前致谢
【问题讨论】:
标签: java sqlite char check-constraints