Добавление ограничения проверки электронной почты в APEX - PullRequest
1 голос
/ 08 декабря 2010

Я довольно плохо знаком с Oracle и очень плохо знаком с APEX. Я пытаюсь добавить ограничение на таблицу для проверки электронной почты:

REGEXP_LIKE(CALLER_EMAIL, '[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+\.[a-zA-Z]{2,4}')

Теперь, если я прав, это будет нормально работать внутри CONSTRAINT <name> CHECK(REGEXP_LIKE(...)), однако я получаю эту (запутанную) ошибку при попытке сохранить ее:

ORA-00920: недопустимый реляционный оператор

Я думаю, это потому, что сгенерированный запрос содержит "CALLER_EMAIL":

alter table "CALL" add constraint
"CALL_EMAILFORMAT_CHK" check ( "CALLER_EMAIL" REGEXP_LIKE(CALLER_EMAIL, '[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+\.[a-zA-Z]{2,4}'))

Есть идеи?

1 Ответ

1 голос
/ 08 декабря 2010

Попробуйте это:

alter table "CALL" add constraint
"CALL_EMAILFORMAT_CHK" check 
   ( REGEXP_LIKE(CALLER_EMAIL, '[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+\.[a-zA-Z]{2,4}'));
...