如何限制oracle中表空间以外的特殊字符

时间:2016-12-16 16:48:48

标签: sql oracle

我需要将数据插入varchar2 column.can任何人请帮助我如何限制除oracle中的表字段中的空格之外的特殊字符,并且该字段不应该接受两个连续的空格

1 个答案:

答案 0 :(得分:4)

您正在寻找一个检查约束,它似乎需要正则表达式。像这样:

alter table t add constraint chk_t_col
    check (regexp_like(col, '^[a-zA-Z0-9 ]+$') and col not like '%  %');

我不确定字符集是什么,但上面是字母数字和空格。

注意:您可以创建正则表达式以排除双空格。我觉得上面的内容更容易理解。