Código de error: 1422. La confirmación explícita o implícita no está permitida en la función almacenada o el activador
Por todas partes que veo, los procedimientos almacenados de MySQL pueden hacer transacciones. Sin embargo, cuando declaro mi función almacenada
create function test( a int )
returns int
MODIFIES SQL DATA
BEGIN
START TRANSACTION ;
update t set col='some value' where id=a ;
COMMIT ;
return 0 ;
END //
yo obtengo
Código de error: 1422. No se permite la confirmación explícita o implícita en la función almacenada o el activador.