वर्तमान MySQL लेन-देन प्रतिबद्ध और समाप्त हो जाएगा जब किसी भी DDL स्टेटमेंट जैसे CREATE या DROP डेटाबेस, क्रिएट, ALTER या DROP टेबल या स्टोर किए गए रूटीन को करंट के बीच में निष्पादित किया जाता है। लेन-देन। वर्तमान लेन-देन में किए गए सभी डेटाबेस परिवर्तनों को स्थायी बना दिया जाएगा और उन्हें वापस नहीं लाया जा सकता है।
उदाहरण
mysql> START TRANSACTION;क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)mysql> INSERT INTO MARKS Values(6,'Manak','History',70);क्वेरी ओके, 1 पंक्ति प्रभावित (0.26 सेकंड)mysql> तालिका छात्र बनाएं (आईडी int, नाम वर्चर (10),); क्वेरी ठीक है, 0 पंक्तियां प्रभावित (0.84 सेकेंड)
जैसा कि हम ऊपर के उदाहरण में देख सकते हैं, एक लेन-देन के बीच में एक DDL स्टेटमेंट निष्पादित किया गया है, इसलिए यह लेनदेन परोक्ष रूप से समाप्त हो जाएगा। MySQL सभी परिवर्तनों को सहेज लेगा और इसे वापस नहीं लाया जा सकता है। हम इसे निम्नलिखित परिणाम सेट की सहायता से देख सकते हैं -
mysql> रोलबैक;क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)mysql> मार्क्स से * चुनें;+------+--------+-------- ---+----------+| आईडी | नाम | विषय | मार्क्स |+----------+------------+----------+----------+| 1 | आरव | गणित | 50 || 1 | हर्षित | गणित | 55 || 3 | गौरव | कॉम्प | 69 || 4 | राहुल | इतिहास | 40 || 5 | यशराज | अंग्रेज़ी | 48 || 6 | मानक | इतिहास | 70 |+----------+---------+-----------+---------+6 पंक्तियों में सेट (0.00 सेकंड)पूर्व>