是否可以在网页上显示触发错误消息?

Shu*_*nov 7 html php mysql database-trigger error-messaging

我在一定条件下有触发器,如果​​条件: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
Run Code Online (Sandbox Code Playgroud)

如何显示SET MESSAGE_TEXT=""到网页?如果不可能通过其他方式

Ten*_*eff 5

您可以在此处查看文档

它说:

SIGNAL 执行后可访问的错误值是由 SIGNAL 语句和 MESSAGE_TEXT 和 MYSQL_ERRNO 项引发的 SQLSTATE 值。这些值可从 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);
}
Run Code Online (Sandbox Code Playgroud)