Вы бы использовали REGEXP_LIKE()
, но если все символы должны быть буквенно-цифровыми, тогда вам нужны начальный и конечный якоря:
CREATE TABLE bankaccount
( accno VARCHAR2(15) CHECK ( REGEXP_LIKE(accno, '^[A-Za-z0-9]+$') ) );
(Обратите внимание, что вместо этого вы также можете использовать класс символов [[:alnum:]]
POSIXиз [A-Za-z0-9]
.)
Если вы хотите, чтобы номера счетов были ровно 15 символов, то вам может понадобиться что-то вроде этого:
CREATE TABLE bankaccount
( accno VARCHAR2(15) CHECK ( REGEXP_LIKE(accno, '^[A-Za-z0-9]{15}$') ) );
И если вам нужны только заглавные буквы:
CREATE TABLE bankaccount
( accno VARCHAR2(15) CHECK ( REGEXP_LIKE(accno, '^[A-Z0-9]+$') ) );
Надеюсь, это поможет.