truct can be issued again
using the RESIGNAL statement.

Below is an example using DECLARE HANDLER:

CREATE TABLE test.t (s1 INT, PRIMARY KEY (s1));

DELIMITER //

CREATE PROCEDURE handlerdemo ( )
  BEGIN
   DECLARE CONTINUE HANDLER FOR SQLSTATE '23000' SET @x2 = 1;
   SET @x = 1;
   INSERT INTO test.t VALUES (1);
   SET @x = 2;
   INSERT INTO test.t VALUES (1);
   SET @x = 3;
  END;
  //

DELIMITER ;

CALL handlerdemo( );

SELECT @x;
+------+
| @x   |
+------+
|    3 |
+------+

URL: https://mariadb.com/kb/en/declare-handler/https://mariadb.com/kb/en/declare-handler/