phpMyAdmin
 sql >> Datenbank >  >> Database Tools >> phpMyAdmin

phpMyAdmin löst das Alter der GUI-Überprüfung aus

RAISEERROR und ROLLBACK werden in der TSQL-Syntax (Microsoft SQL Server) verwendet.

Im Fall von MySQL verwenden wir SIGNAL .. SET MESSAGE_TEXT .. um eine Ausnahme innerhalb des Triggers auszulösen:

BEGIN
    IF (DATEDIFF(CURRENT_DATE(),NEW.birth_date) < 6570) THEN

      -- Throw Exception
      SIGNAL SQLSTATE '45000' 
        SET MESSAGE_TEXT = 'Age is less than 18 years!';

    END IF;  -- A semicolon (delimiter) is missing here
END

Um einen generischen SQLSTATE-Wert zu signalisieren, verwenden Sie „45000“, was „unbehandelte benutzerdefinierte Ausnahme“ bedeutet.

Die Fehlerwerte, auf die nach der Ausführung von SIGNAL zugegriffen werden kann, sind der von der SIGNAL-Anweisung ausgelöste SQLSTATE-Wert und die Elemente MESSAGE_TEXT und MYSQL_ERRNO.