maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #11006
Error 1422 - Explicit or implicit commit is not allowed in stored function or trigger
Hello Alexander,
I'm facing to a new issue with my stored procedures.
Some of them are called directly or from trigger.
When these procedures are called directly, they manage the transaction and when they are called from trigger, they doesn't manage the transaction.
This works fine on Oracle, SQLServer , ... but fail on Mariadb because the check is done in is_not_allowed_in_function() before the call.
use test;
set sql_mode=oracle;
create or replace table t1 (c1 int);
insert into t1 values (1);
delimiter /
create or replace procedure p1(manage_transactionnal int)
is
begin
if manage_transactionnal = 1 then
commit;
end if;
end;
/
create or replace trigger tg1 after delete on t1 for each row
begin
call p1(0);
end;
/
delimiter ;
start transaction;
delete from t1;
rollback;
What do you think about this ?
Regards,
Jérôme.
Follow ups