Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

MySQL จัดการพฤติกรรม Transaction ด้วยโหมด Autocommit อย่างไร


MySQL จัดการ Transaction ด้วย 2 โหมด:

Autocommit ON (Default)

ทุก Statement เป็น Transaction แยกต่างหาก Commit อัตโนมัติเมื่อจบ ตั้งค่า:

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

Autocommit OFF

Statement หลายตัวรวมเป็น Transaction เดียว ไม่ Commit จนกว่าจะมี COMMIT ตั้งค่า:

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

หมายเหตุ: สำหรับ InnoDB ควรใช้ COMMIT โดยตรงแทนการตั้ง AUTOCOMMIT = 0