检查约束不读取 [A-Z]?

Check constraint not reading [A-Z]?

我在检查约束读取 [A-Z] 时遇到问题。

代码如下:

drop table test CASCADE CONSTRAINTS;

Create table test (
post Varchar2(6),
CHECK (post like '[A-Z]')
);

insert into test values ('A');

我在尝试插入 A 后收到“违反检查约束”错误。任何反馈都将不胜感激。即使它对你有用,因为一切都告诉我它应该有用。

使用REGEXP_LIKE:

CREATE TABLE test (
    post Varchar2(6),
    CHECK (REGEXP_LIKE(post, '^[A-Z]+$'))
);

模式^[A-Z]+$ 将匹配仅包含大写字母的帖子。相反,如果您想标记以大写字母开头的帖子,请使用 ^[A-Z].