Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

चल रहे ट्रांजैक्शन के बीच में DDL स्टेटमेंट निष्पादित होने पर MySQL ट्रांजैक्शन का क्या होगा?


जब वर्तमान ट्रांजैक्शन के बीच में CREATE या DROP डेटाबेस, CREATE, ALTER या DROP टेबल या स्टोर्ड रूटीन जैसे कोई DDL स्टेटमेंट निष्पादित किया जाता है तो वर्तमान MySQL ट्रांजैक्शन कमिट हो जाएगा और समाप्त हो जाएगा। वर्तमान ट्रांजैक्शन में किए गए सभी डेटाबेस परिवर्तन स्थायी हो जाएंगे और इन्हें रोल बैक नहीं किया जा सकता।

उदाहरण

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

mysql> INSERT INTO MARKS Values(6,'Manak','History',70); 
Query OK, 1 row affected (0.26 sec)

mysql> Create table student(id int, Name Varchar(10),); 
Query OK, 0 rows affected (0.84 sec)

जैसा कि हम उपरोक्त उदाहरण में देख सकते हैं, एक DDL स्टेटमेंट ट्रांजैक्शन के बीच में निष्पादित किया गया है इसलिए यह ट्रांजैक्शन निहित रूप से समाप्त हो जाएगा। MySQL सभी परिवर्तनों को सेव कर देगा और इसे रोल बैक नहीं किया जा सकता। हम इसे निम्न रिजल्ट सेट से देख सकते हैं -

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

mysql> select * from marks; 
+------+---------+-----------+-------+
| Id   | Name    | Subject   | Marks |
+------+---------+-----------+-------+
| 1    | Aarav   | Maths     | 50    |
| 1    | Harshit | Maths     | 55    |
| 3    | Gaurav  | Comp      | 69    |
| 4    | Rahul   | History   | 40    |
| 5    | Yashraj | English   | 48    |
| 6    | Manak   | History   | 70    |
+------+---------+---------+---------+
6 rows in set (0.00 sec)

  1. - MySQL 8.0 में डिप्रिकेटेड (अप्रचलित) विशेषताएं

    MySQL 8.0 में डिप्रिकेटेड विशेषताएं (भविष्य में हटाई जा सकती हैं) utf8mb3 कैरेक्टर सेट → utf8mb4 उपयोग करें। sha256_password ऑथेंटिकेशन → caching_sha2_password उपयोग करें। validate_password प्लगइन कार्यान्वयन परिवर्तन → कम्पोनेंट इन्फ्रास्ट्रक्चर सुनिश्चित करें। AUTO_INCREMENT FLOAT/DOUBLE कॉलम पर

  1. - MySQL 8.0 में जोड़ी गई नई विशेषताएं (Added Features)

    MySQL 8.0 की नई प्रमुख विशेषताएं 1. सुरक्षा स्तर उन्नत DBA को खाता प्रबंधन में अधिक लचीलापन और नियंत्रण। 2. रिसोर्स ग्रुप्स सर्वर थ्रेड्स को विशिष्ट रिसोर्स ग्रुप्स असाइन कर सकता है; ग्रुप एट्रिब्यूट्स से संसाधन खपत नियंत्रित/प्रतिबंधित करें। 3. ट्रांजैक्शनल डेटा डिक्शनरी डेटाबेस ऑब्जेक्ट मेटाडे

  1. - MySQL 8.0 में कौन से विकल्प और वेरिएबल हटाए गए?

    MySQL 8.0 में हटाए गए कुछ विकल्प और वेरिएबल नीचे सूचीबद्ध हैं: innodb_available_undo_logs: यह InnoDB रोलबैक सेगमेंट की कुल संख्या को संदर्भित करता है। यह innodb_rollback_segments से अलग है, जो सक्रिय रोलबैक सेगमेंट की संख्या प्रदर्शित करता है। इसे MySQL 8.0.2 में हटा दिया गया था। Qcache_free_block