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

วิธีเริ่ม MySQL Transaction ใหม่


รัน START TRANSACTION เพื่อเริ่ม Transaction ใหม่ พฤติกรรมขึ้นอยู่กับ AUTOCOMMIT Mode:

Autocommit ON (Default)

ทุก Statement 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 ด้วย COMMIT โดยตรง

ในทั้ง 2 โหมด เริ่ม Transaction ด้วย:

mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)

แจ้งให้ MySQL รู้ว่าต่อไปเป็น Work Unit เดียวจนจบ Transaction