Можно ли отобразить сообщение об ошибке триггера на веб-странице?

У меня есть триггер при определенном условии, если условие: false возникает ошибка. Я должен отобразить это сообщение об ошибке, которое возникает в триггере базы данных, на HTML веб-странице, чтобы уведомить пользователя!

CREATE TRIGGER check_trigger BEFORE INSERT ON your_table
FOR EACH ROW
BEGIN        
    IF (NEW.name = NEW.firstname) THEN
        SIGNAL SQLSTATE '45000' 
            SET MESSAGE_TEXT = 'same names error. Insertion canceled';
    END IF;
END

Как отобразить SET MESSAGE_TEXT="" на веб-странице? Если это невозможно другими способами


person Shukurillo Baykhanov    schedule 02.07.2019    source источник
comment
@YourCommonSense Есть идеи, чувак??   -  person Shukurillo Baykhanov    schedule 04.07.2019


Ответы (2)


Вы можете ознакомиться с документацией. здесь.

В нем говорится:

Значения ошибок, доступные после выполнения SIGNAL, — это значение SQLSTATE, поднятое оператором SIGNAL, а также элементы MESSAGE_TEXT и MYSQL_ERRNO. Эти значения доступны в C API:

mysql_sqlstate() возвращает значение SQLSTATE.

mysql_errno() возвращает значение MYSQL_ERRNO.

mysql_error() возвращает значение MESSAGE_TEXT.

Поскольку я предполагаю, что вы используете PHP, вы можете попробовать

if (!$mysqli->query("INSERT INTO your_table SET name='a', firstname='a'")) {
    printf("Error message: %s\n", $mysqli->error);
}
person Teneff    schedule 02.07.2019
comment
Проверьте мою попытку, чувак - person Shukurillo Baykhanov; 02.07.2019

Вы можете посмотреть на некоторые из них, такие как Pusher, который является внешней службой отдыха, которая может отправлять сообщения на ваш веб-сайт.

person Community    schedule 03.07.2019