Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle डेटाबेस में PL/SQL बल्क कलेक्ट का परिचय

पीएल/एसक्यूएल थोक संग्रह का परिचय

आज लिखी गई एक अच्छी तरह से संरचित क्वेरी आपको भविष्य में होने वाली भयावह घटनाओं से बचा सकती है। क्वेरी प्रदर्शन एक ऐसी चीज है जिसे हम सभी चाहते हैं, लेकिन बहुत कम लोग इसे सही मायने में पाते हैं। छोटी अवधारणाओं को सीखने से आपको अनुभव प्राप्त करने में मदद मिल सकती है जिससे बेहतर क्वेरी लेखन कौशल हो सकता है। आज इस ब्लॉग में आप उन छोटी अवधारणाओं में से एक को सीखने जा रहे हैं जो है “थोक संग्रह .

थोक संग्रह संदर्भ स्विच को कम करने के बारे में है और क्वेरी के प्रदर्शन में सुधार। इस प्रकार यह समझने के लिए कि थोक संग्रह क्या है, हमें पहले यह सीखना होगा कि संदर्भ स्विचिंग . क्या है ?

संदर्भ स्विचिंग क्या है?

जब भी आप पीएल/एसक्यूएल ब्लॉक लिखते हैं या पीएल/एसक्यूएल प्रोग्राम कहते हैं और इसे निष्पादित करते हैं, तो पीएल/एसक्यूएल रनटाइम इंजन लाइन से लाइन को संसाधित करना शुरू कर देता है। यह इंजन सभी PL/SQL स्टेटमेंट को अपने आप प्रोसेस करता है लेकिन यह उन सभी SQL स्टेटमेंट्स को पास करता है, जिन्हें आपने उस PL/SQL ब्लॉक में कोडित किया है, SQL रनटाइम इंजन में। फिर उन SQL कथनों को SQL इंजन द्वारा अलग से संसाधित किया जाएगा। एक बार जब यह उन्हें SQL इंजन को संसाधित कर लेता है तो परिणाम वापस पीएल/एसक्यूएल इंजन पर वापस कर देता है। ताकि बाद वाले द्वारा एक संयुक्त परिणाम तैयार किया जा सके। नियंत्रण को इधर-उधर रोकना संदर्भ स्विचिंग कहलाता है।

संदर्भ स्विचिंग क्वेरी प्रदर्शन को कैसे प्रभावित करता है?

प्रसंग स्विचिंग का क्वेरी के प्रदर्शन पर सीधा प्रभाव पड़ता है। नियंत्रणों को जितना अधिक उछाला जाएगा, उतना ही अधिक ओवरहेड होगा जो बदले में प्रदर्शन को कम करेगा। इसका मतलब है कि संदर्भ स्विचिंग जितना कम होगा, क्वेरी का प्रदर्शन उतना ही बेहतर होगा।

अब आप सोच रहे होंगे "क्या हम इस बारे में कुछ नहीं कर सकते?" क्या हम उन नियंत्रण संक्रमणों को कम कर सकते हैं? क्या वैसे भी हम संदर्भ स्विच को कम कर सकते हैं? उन सभी सवालों का जवाब हां है, हमारे पास एक विकल्प है जो हमारी मदद कर सकता है। वह विकल्प बल्क कलेक्ट क्लॉज है

बल्क कलेक्ट क्लॉज क्या है?

बल्क कलेक्ट क्लॉज एकाधिक स्विच को एक संदर्भ स्विच में संपीड़ित करता है और पीएल/एसक्यूएल प्रोग्राम की दक्षता और प्रदर्शन को बढ़ाता है।

बल्क कलेक्ट क्लॉज पीएल/एसक्यूएल प्रोग्राम से सभी एसक्यूएल स्टेटमेंट कॉल्स को इकट्ठा करके और उन्हें सिर्फ एक बार में एसक्यूएल इंजन में भेजकर मल्टीपल कंट्रोल होपिंग को कम करता है।

हम बल्क कलेक्ट क्लॉज का उपयोग कहां कर सकते हैं?

बल्क कलेक्ट क्लॉज का उपयोग SELECT-INTO, FETCH-INTO और RETURN-INTO क्लॉज के साथ किया जा सकता है।

बल्क कलेक्ट स्टेटमेंट की मदद से हम डेटाबेस ऑब्जेक्ट्स जैसे टेबल्स या व्यू से बड़े डेटा सेट को सेलेक्ट, INSERT, UPDATE या DELETE कर सकते हैं।

बल्क डेटा प्रोसेसिंग क्या है?

पीएल/एसक्यूएल रनटाइम इंजन से एसक्यूएल इंजन और इसके विपरीत डेटा के बैचों को लाने की प्रक्रिया को बल्क डेटा प्रोसेसिंग कहा जाता है।

हमारे पास कितने बल्क डेटा प्रोसेसिंग स्टेटमेंट हैं?

हमारे पास एक बल्क डेटा प्रोसेसिंग है क्लॉज जो बल्क कलेक्ट और एक बल्क डेटा प्रोसेसिंग कथन . है जो Oracle डाटाबेस में FORALL है।

मैंने सुना है कि बल्क कलेक्ट क्लॉज में निहित और स्पष्ट दोनों तरह के कर्सर का उपयोग होता है?

हां, आपने इसे सही सुना। हम SQL स्टेटमेंट के अंदर या FETCH स्टेटमेंट के साथ बल्क कलेक्ट क्लॉज का उपयोग कर सकते हैं। जब हम SQL स्टेटमेंट के साथ बल्क कलेक्ट क्लॉज का उपयोग करते हैं यानी SELECT INTO यह निहित कर्सर का उपयोग करता है। जबकि अगर हम FETCH स्टेटमेंट के साथ बल्क कलेक्ट क्लॉज का उपयोग करते हैं तो यह स्पष्ट कर्सर का उपयोग करता है।

यह पहले पीएल/एसक्यूएल बल्क डेटा प्रोसेसिंग क्लॉज का एक त्वरित परिचय था जो कि बल्क कलेक्ट है। एक बार जब हम पहले एक के साथ कर लेंगे तो हम दूसरे बल्क डेटा प्रोसेसिंग स्टेटमेंट के बारे में जानेंगे। इस बीच हमारे YouTube चैनल को सब्सक्राइब करना सुनिश्चित करें क्योंकि अगले ट्यूटोरियल में हम सीखेंगे कि कैसे हम बल्क कलेक्ट क्लॉज का उपयोग करके SQL स्टेटमेंट की दक्षता में सुधार कर सकते हैं।

धन्यवाद और आपका दिन शुभ हो!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle में ओवर क्लॉज

  2. Oracle से PostgreSQL में माइग्रेट करने के शीर्ष दस कारण

  3. Oracle SQL में कस्टम ऑर्डर

  4. मैं DBMS_METADATA (और SCHEMA_EXPORT) के साथ DDL स्क्रिप्ट के रूप में Oracle SCHEMA कैसे प्राप्त करूं?

  5. तिथि से युग-ओरेकल में कनवर्ट करें