Habs jetzt auch mit einer Test-STP probiert. Folgender Code:
Code:
create procedure test_cc()
language sql
begin
declare exit handler for sqlexception rollback;
insert into test values(1,'');
/* Dies löst einen SQL0803 aus (Doppelter Schlüsselwert)*/
insert into test values(1,'');
commit;
end;
Den Aufruf hab ich über RunSQLScripts vom System i Navigator gemacht. JDBC-Settings: Cursor stability(*CS)
Theoretisch müsste dann ja das erste INSERT zurückgesetzt werden oder hab ich da einen Denkfehler? Es klappt nicht. Auch nicht wenn ich nach dem Aufruf der STP explizit ein rollback ausführe...
Bookmarks