К сожалению, моя проверка не работает, когда я нажимаю кнопку отправки. Когда я нажимаю кнопку отправки «что», появляется как ошибка, которая равна b = null ниже. Как бы вы подтвердили регистрационную страницу после того, как человек нажал кнопку отправки. Или как бы вы сделали проверку после кнопки отправки?Как функция PLSQL возвращает проверку текста?
DECLARE
error_message varchar2(4000);
b varchar2(500);
FUNCTION validate_field RETURN VARCHAR2
AS
BEGIN
b := :P101_REG_FIRST_NAME;
IF (REGEXP_LIKE(b, '[A-Za-z]') AND :P101_NEW <> NULL AND NOT(REGEXP_LIKE(b, '[:space:]'))) THEN
RETURN 'works' || b;
ELSIF b IS NULL THEN
RETURN b || 'what';
ELSIF REGEXP_COUNT(b, '[A-Za-z]') = 1 THEN
RETURN 'Name cannot be single letter';
ELSE RETURN 'HUH' || ' ' || b;
END IF;
END;
BEGIN
error_message := '';
error_message := validate_field;
IF error_message IS NULL THEN
RETURN NULL;
ELSE
RETURN error_message;
END IF;
COMMIT;
END;
** Нет необходимости публиковать что-либо утром. ** Большинство людей знают, что сравнение, подобное «ничего» <> NULL', никогда не является ** истинным (это очень простой материал SQL), и тем, кто не можете ссылаться, вероятно, на сотни подобных вопросов прямо здесь, на Stack Overflow. Лучшее для вас, если вы удовлетворены своим собственным ответом, состоит в том, чтобы ** удалить ** ваш вопрос целиком. Давайте оставим сайт чистым! – mathguy