Ver Mensaje Individual
  #3 (permalink)  
Antiguo 12/04/2008, 22:28
Punchi
 
Fecha de Ingreso: mayo-2004
Ubicación: Santiago, Chile
Mensajes: 191
Antigüedad: 20 años
Puntos: 1
Re: No funciona el COMMIT

No me funciona =(

Lo dejo asi

Código:
DELIMITER $$

DROP PROCEDURE IF EXISTS `SP_ADD_CLIENT` $$
CREATE PROCEDURE `SP_ADD_CLIENT`(firstname VARCHAR(50), lastname VARCHAR(50), email VARCHAR(50))

BEGIN
START TRANSACTION;
SET AUTOCOMMIT=0;

DECLARE idUser INT;
DECLARE a INT;

INSERT INTO CLIENT (FIRSTNAME, LASTNAME, EMAIL) VALUES (firstname, lastname, email,CURDATE() );

SET idUser = LAST_INSERT_ID();

INSERT INTO STUDIO (ID_CL, NAME_ST)
	VALUES (idUser, name_st);

INSERT INTO ME_EQUIVOCO (ID_CL, ID_PL, ADDED)
	VALUES (idUser, 1, CURDATE());

SET a=(SELECT @@error_count);
IF a=0 THEN
COMMIT;
ELSE
ROLLBACK;
END IF;

END $$
Pero sigue arrojandome error. La base de datos claramente es InnoDB, y como vez, el autocommit lo dejo en 0.

ERROR
Código:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'DECLA
RE idUser INT;
DECLARE a INT;
INSERT INTO CLIENT (FIRSTNAME, LASTNAME, EMAI' at line 5
Que más puede ser?