我需要创建一个具有列数的表,其中一列是 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])+$'))
);
尝试:
CREATE TABLE test_1
(
test_id number,
test_name varchar(50),
CONSTRAINT
name_test
CHECK (
regexp_like(test_name,'^([aA-zZ])+$')
)
);
你很接近,只需使用函数(返回真/假)。
CREATE TABLE z_test_1
(
test_id number,
test_name varchar(50),
CONSTRAINT name_test
CHECK (regexp_like(test_name,'^([aA-zZ])+$'))
);
http://www.dba-oracle.com/t_regular_expressions_constraints_updates_columns.htm
...CHECK (regexp_like(test_name,'^[[:alpha:]]+$') )