phpMyAdmin
 sql >> Base de données >  >> Database Tools >> phpMyAdmin

phpMyAdmin trigger gui vérifiant l'âge

RAISEERROR et ROLLBACK sont utilisés dans la syntaxe TSQL (Microsoft SQL Server).

Dans le cas de MySQL, nous utilisons SIGNAL .. SET MESSAGE_TEXT .. pour lancer une exception à l'intérieur du déclencheur :

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

Pour signaler une valeur SQLSTATE générique, utilisez '45000', ce qui signifie "exception définie par l'utilisateur non gérée".

Les valeurs d'erreur accessibles après l'exécution de SIGNAL sont la valeur SQLSTATE déclenchée par l'instruction SIGNAL et les éléments MESSAGE_TEXT et MYSQL_ERRNO.