我需要创建一个包含列数的表,其中一列是varchar2类型。现在问题是我需要设置特定列应该只支持字母表。
我已经尝试过这段代码,但是没有工作,任何人都可以帮助我!
提前谢谢!
CREATE TABLE test_1
(
test_id number,
test_name varchar(50),
CONSTRAINT name_test
CHECK (test_name where regexp_like(test_name,'^([aA-zZ])+$'))
);
答案 0 :(得分:1)
尝试:
CREATE TABLE test_1
(
test_id number,
test_name varchar(50),
CONSTRAINT
name_test
CHECK (
regexp_like(test_name,'^([aA-zZ])+$')
)
);
答案 1 :(得分:0)
你很接近,只需使用该函数(返回true / false)。
CREATE TABLE z_test_1
(
test_id number,
test_name varchar(50),
CONSTRAINT name_test
CHECK (regexp_like(test_name,'^([aA-zZ])+$'))
);
答案 2 :(得分:0)
http://www.dba-oracle.com/t_regular_expressions_constraints_updates_columns.htm
...CHECK (regexp_like(test_name,'^[[:alpha:]]+$') )