Только цифры в VARCHAR с через триггер - MySQL

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. По заданию нужно сделать триггер, который проверяет строку на наличие всех цифр. Если введена не цифра то должен выдавать ошибку. Перепробовал всё что можно делал различные условия в цикле while, например:
IF SUBSTRING(NEW.phone,a,1) <0 OR SUBSTRING(NEW.phone,a,1)>9 THEN
IF ascii(SUBSTRING(NEW.phone,a,1)) BETWEEN 30 AND 39  THEN
IF SUBSTRING(NEW.phone,a,1) NOT LIKE '%[0-9]%' THEN
IF (SUBSTRING(NEW.phone,a,1) = '%[:digit:]%' ) THEN
В результате эти условия не выполняются, и всегда выходит ELSE, хотя в поле введены только цифры. Что может быть не так ? Можно ли как нибуть ещё сделать проверку поля на наличие только цифр ?

Решение задачи: «Только цифры в VARCHAR с через триггер»

textual
Листинг программы
REGEXP '^[0-9]+$';

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.786 из 5