Transaction gom nhiều statement thành một đơn vị all-or-nothing. Nếu commit thành công, tất cả thay đổi được ghi bền vững; nếu rollback, các thay đổi bị hủy. Trong lúc transaction chưa commit, thay đổi chưa visible như dữ liệu hoàn chỉnh cho transaction khác theo isolation rules.
Ví dụ:
sql
BEGIN;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;Transaction là nền tảng để tránh dữ liệu nửa vời trong payment, inventory, booking và các workflow nhiều bước.