dariolee
16.03.2009, 12:29:25
Chce w jednej funkcji zrobić kilka insertów. Jak utworzyć transakcję, żeby w razie jakiegoś błędu w czasie wstawiania danych transakcja była odwoływana ? Mam 2 tabele do których wstawiam dane 1.Podmiot (id_podmiot, pesel, nip,nazwa), 2.Kontrola(id_kontrola, id_zakres, id_podmiot,data). Wstawiam pierwszym insertem dane do tabeli Podmiot(id_podmiot jest typu serial) ale przy błędzie w tej tabeli tracę jedno id_podmiot i nastepny id_podmiot jest +2.
dariolee
17.03.2009, 07:36:09
A może jakiś przykładzik ? Jak sprawdzić czy wystąpił błąd w czasie wstawiania danych ?
Mephistofeles
17.03.2009, 13:41:43
Nie wiem jak w PostgreSQL, ale w MySQLu najprościej mówiąc mysql_query($sql) or mysql_query('ROLLBACK');.