Как использовать ограничение CHECK для ограничения нечислового varchar2 (только алфавиты)?

У меня есть столбец ИМЯ
Он должен содержать только символы, а не цифры
Как использовать условие CHECK:

CHECK(NAME NOT LIKE '%[0-9]%')

или любой другой метод...

редактировать: база данных Oracle используется.

2 ответа

Решение

Вы не указали свою СУБД, поэтому я предполагаю, что PostgreSQL

CHECK(name ~ '^[^0-9]*$')

Двойной минус должен быть стандартным (но не MySQL), потому что он использует LIKE:

CHECK(NAME NOT LIKE '%[^a-zA-Z]%')
Другие вопросы по тегам