Transaction gom nhiều câu lệnh thành một khối "được ăn cả, ngã về không": commit thì mọi thay đổi được ghi bền vững, rollback thì hủy sạch như chưa từng chạy. Trong lúc chưa commit, thay đổi chưa hiện ra như dữ liệu hoàn chỉnh với transaction khác (theo isolation rules).
Ví dụ chuyển tiền — trừ tài khoản này, cộng tài khoản kia, cả hai phải cùng thành công:
sql
BEGIN;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;Đây là nền tảng để tránh dữ liệu "nửa vời" trong thanh toán, tồn kho, đặt chỗ và mọi workflow nhiều bước.