START TRANSACTION कमांड चलाकर नया MySQL ट्रांजैक्शन शुरू करें। ट्रांजैक्शन का व्यवहार SQL AUTOCOMMIT मोड पर निर्भर करता है।
1. AUTOCOMMIT ON (डिफ़ॉल्ट मोड)
प्रत्येक स्टेटमेंट स्वतंत्र ट्रांजैक्शन, ऑटो-कमिट।
SET AUTOCOMMIT = 1;
mysql> SET AUTOCOMMIT = 1;
Query OK, 0 rows affected (0.07 sec)
2. AUTOCOMMIT OFF
बाद के स्टेटमेंट्स एक ट्रांजैक्शन की तरह काम करते हैं, स्पष्ट COMMIT तक कोई कमिट नहीं।
SET AUTOCOMMIT = 0;
mysql> SET AUTOCOMMIT = 0;
Query OK, 0 rows affected (0.00 sec)
InnoDB के लिए: SET AUTOCOMMIT = 0 के बजाय स्पष्ट COMMIT के साथ ट्रांजैक्शन नियंत्रण अनुशंसित।
दोनों मोड में ट्रांजैक्शन शुरू करना:
mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)
यह MySQL को सूचित करता है कि बाद के स्टेटमेंट्स एकल कार्य इकाई हैं जब तक ट्रांजैक्शन समाप्त न हो।
वैकल्पिक सिंटैक्स:
BEGIN;
-- या
BEGIN WORK;
मॉडिफायर के साथ (केवल START TRANSACTION):
START TRANSACTION READ ONLY;
START TRANSACTION READ WRITE;
START TRANSACTION WITH CONSISTENT SNAPSHOT;
सत्र वेरिएबल जांच:
SELECT @@AUTOCOMMIT; -- 1=ON, 0=OFF