示例如下:
DELIMITER $$
DROP PROCEDURE IF EXISTS `test`.`handlerdemo`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `handlerdemo`()
BEGIN
DECLARE X2 INT;
DECLARE CONTINUE HANDLER FOR SQLWARNING SET X2= 1 ;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET X2 = 2 ;
DÉCLARE CONTINUE HANDLER POUR SQLSTATE '23000' SET X2= 3 ;
DECLARE CONTINUE HANDLER POUR SQLEXCEPTION SET X2 = 4 ;
COMMENCER LA TRANSACTION ;
POINT DE SAUVEGARDE point de sauvegarde_1 ;
COMMENCER
L'INSÉRATION DANS LES VALEURS d'Eugene (1);
INSÉRER DANS LES VALEURS d'Eugène (2);
SÉLECTIONNEZ X2 ;
fin;
ROLLBACK AU SAVEPOINT savepoint_1 ;
INSÉRER DANS LES VALEURS d'Eugène (3);
FIN$$
DÉLIMITEUR ;
#测试表
CREATE TABLE `eugene` (
t1` int(4) par défaut NULL
)