Transaction Control - zatwierdzenie transakcji COMMIT i wycofywanie transakcji ROLLBACK
niedziela, sierpień 3rd, 2008
Po wykonaniu jednego z poleceń DML została wykonana jakaś transakcja i teraz możemy tą transakcje zatwierdzić lub wycofać bez żadnych konsekwencji.
przykładowo robię delete na tabeli pracownicy i w wyniku tego działania kasuję 200 rekordów z tabeli pracownicy, i teraz jeżeli chcę żeby ta transakcja została zatwierdzona czyli zmiany zostały zrobione fizycznie w bazie danych muszę zatwierdzić tą transakcję poleceniem COMMIT lub jeżeli chcę wycofać te zmiany wtedy robię ROLLBACK i transakcja jest wycofana.
Można zatwierdzać jedną transakcję lub wiele jeżeli takie miały miejsce od ostatniego zatwierdzenie, analogicznie jest z wycofywaniem transakcji.
przykład:
INSERT INTO PRACOWNICY (imie,nazwisko,wiek) values (’piotr’,'kowalski’,'32′);
COMMIT;
UPDATE PRACOWNICY SET IMIE=WACŁAW where imie=’piotr’ and nazwisko=’kowalski’;
ROLLBACK;
Polecenia zatwierdzone (commit;) nie można wycofać poleceniem ROLLBACK