Mam przykładową transakcję, jak z manuala
start TRANSACTION;
update u_glowne set wartosc = '407' where nr = '100';
update u_glowne set wartosc = '407' where nr = '999';
commit;
Jeśli właściwie zrozumiałem ideę transakcji, to w przypadku, kiedy pierwsze zapytanie wywali błąd (np. nie ma wiersza o nr =100), to drugie zapytanie nie powinno być realizowane. Tymczasem tak się nie dzieje...
Co może powodować problem??
Tabela InnoDB, wersja MySQL: 5.045, autocommit = 1
Przy okazji - polecenie SET AUTOCOMMIT = 0 nie zmienia wartości tej zmiennej :/ (pewnie uprawnienia użytkownika)