दें कि तालिकाओं में ठीक वही कॉलम हैं जो आप कुछ इस तरह कर सकते हैं:
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED ;
INSERT INTO NEW_TABLE (SELECT * FROM OLD_TABLE);
COMMIT ;
मैंने Wistar's पर आधारित कुछ अतिरिक्त स्पष्टीकरण शामिल किए हैं। टिप्पणी। यहां उपयोग किए जा सकने वाले पठन स्तर हैं:
- प्रतिबद्ध पढ़ें :सुसंगत (नॉनलॉकिंग) के संबंध में कुछ हद तक ओरेकल जैसा अलगाव स्तर पढ़ता है:प्रत्येक सुसंगत पढ़ा, यहां तक कि एक ही लेनदेन के भीतर, अपना नया स्नैपशॉट सेट और पढ़ता है
- बिना पढ़े पढ़ें :चयन कथन एक गैर-लॉकिंग फैशन में किए जाते हैं, लेकिन एक पंक्ति के संभावित पुराने संस्करण का उपयोग किया जा सकता है। इस प्रकार, इस अलगाव स्तर का उपयोग करते हुए, ऐसे पठन सुसंगत नहीं हैं। इसे गंदा पढ़ना भी कहा जाता है। अन्यथा, यह अलगाव स्तर READ COMMITTED की तरह काम करता है।
- दोहराए जाने योग्य पढ़ें :यह InnoDB के लिए डिफ़ॉल्ट आइसोलेशन स्तर है। लगातार पढ़ने के लिए, रीड कमिटेड आइसोलेशन स्तर से एक महत्वपूर्ण अंतर है:एक ही लेन-देन के भीतर सभी सुसंगत रीड पहले रीड द्वारा स्थापित स्नैपशॉट को पढ़ते हैं। इस कन्वेंशन का मतलब है कि यदि आप एक ही लेन-देन के भीतर कई सादे (नॉनलॉकिंग) सेलेक्ट स्टेटमेंट जारी करते हैं, तो ये सेलेक्ट स्टेटमेंट एक दूसरे के संबंध में भी संगत हैं।
- सीरियल करने योग्य :यह स्तर रिपीटेबल रीड की तरह है, लेकिन InnoDB स्पष्ट रूप से सभी प्लेन सेलेक्ट स्टेटमेंट को SELECT ... लॉक इन शेयर मोड में बदल देता है अगर ऑटोकॉमिट अक्षम है। यदि ऑटोोकॉमिट सक्षम है, तो चयन स्वयं का लेनदेन है। इसलिए इसे केवल पढ़ने के लिए जाना जाता है और इसे क्रमबद्ध किया जा सकता है यदि इसे एक सुसंगत (नॉनलॉकिंग) रीड के रूप में किया जाता है और अन्य लेनदेन के लिए ब्लॉक करने की आवश्यकता नहीं होती है। (यदि अन्य लेन-देन ने चयनित पंक्तियों को संशोधित किया है, तो एक सादे चयन को ब्लॉक करने के लिए बाध्य करने के लिए, ऑटोकॉमिट अक्षम करें।)
मुझे आशा है कि यह मदद करता है।