Salve a tutti. Sto cercando di capire come funzionano le stored procedure.
Nel codice che segue ottengo un errore dato dalla dichiarazione dell'handler che vorrei usare per intercettare un'eccezione per poter poi eseguire il rollback o il commit.
Sapete dirmi perche?
Ho seguito il manuale di Mysql 5 come reference per la declare dell'handler.
codice:
DELIMITER $$
DROP PROCEDURE IF EXISTS mysql.prova $$
CREATE PROCEDURE mysql.prova()
BEGIN
DECLARE error BOOLEAN DEFAULT FALSE;
SET AUTOCOMMIT = 0;
DECLARE CONTINUE HANDLER FO SQLEXCEPTION SET error = TRUE;
DROP DATABASE IF EXISTS dbprova;
CREATE DATABASE dbprova;
CREATE TABLE dbprova.table1 ( nome char(10), cognome char(10));
INSERT INTo dbprova.table1 SELECT * FROM dbold.pippo;
IF error THEN ROLLBACK;
ELSE COMMIT;
END IF;
END; $$
DELIMITER ;
L'errore che mi porta e' questo:
codice:
You have an error in your SQL syntax; Catch the manual the corrisponds to your
Mysql server version for the right syntax to use near '' DECLARE CONTINUE
HANDLER FO SQLEXCEPTION SET error = TRUE; // scritto a mano d ame :o [...]
Ringrazio in anticipo quanti interverranno
.