Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

MySQL quản lý hành vi giao dịch (transaction) như thế nào?


MySQL quản lý giao dịch bằng 2 chế độ:

1. Autocommit ON (Mặc định)

Mỗi câu lệnh là một giao dịch hoàn chỉnh, tự động commit khi kết thúc.

SET AUTOCOMMIT = 1
mysql> SET AUTOCOMMIT = 1;
Query OK, 0 rows affected (0.07 sec)

2. Autocommit OFF

Các câu lệnh tiếp theo hoạt động như một giao dịch, không commit cho đến khi có COMMIT rõ ràng.

SET AUTOCOMMIT = 0
mysql> SET AUTOCOMMIT = 0;
Query OK, 0 rows affected (0.00 sec)

Lưu ý: Với InnoDB, khuyến nghị dùng SET AUTOCOMMIT = 0 và commit thủ công bằng COMMIT để kiểm soát giao dịch an toàn.