उदाहरण के साथ LOOP के लिए Oracle PL / SQL

विषय - सूची:

Anonim

लूप के लिए क्या है?

जब आप कुछ अन्य शर्तों के आधार पर किसी ज्ञात संख्या के लिए कोड निष्पादित करना चाहते हैं, तो "LOOP के लिए" कथन सबसे उपयुक्त है।

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

लूप चर स्व-वृद्धिशील है, इसलिए इस लूप में कोई स्पष्ट वेतन वृद्धि ऑपरेशन की आवश्यकता नहीं है। लूप चर को घोषित करने की आवश्यकता नहीं है, क्योंकि यह स्पष्ट रूप से घोषित किया गया है।

FOR  in LOOPEND LOOP;
सिंटैक्स स्पष्टीकरण:
  • उपरोक्त सिंटैक्स में, कीवर्ड 'फॉर' मार्क्स की शुरुआत लूप और 'END LOOP' लूप के अंत को चिह्नित करता है।
  • निष्पादन भाग को निष्पादित करने से पहले हर बार लूप चर का मूल्यांकन किया जाता है।
  • निष्पादन ब्लॉक में सभी कोड शामिल हैं जिन्हें निष्पादित करने की आवश्यकता है। निष्पादन भाग में कोई भी निष्पादन विवरण हो सकता है।
  • पूरे लूप के निष्पादन के दौरान loop_variable को स्पष्ट रूप से घोषित किया जाता है, और इस loop_variable का दायरा केवल इस लूप के अंदर होगा।
  • यदि लूप वेरिएबल रेंज से बाहर निकलता है, तो नियंत्रण लूप से बाहर निकल जाएगा।
  • लूप को लोअर ऑर्डर से पहले 'REVERSE' कीवर्ड जोड़कर रिवर्स ऑर्डर में काम किया जा सकता है।

उदाहरण 1 : इस उदाहरण में, हम लूप स्टेटमेंट का उपयोग करके संख्या 1 से 5 तक प्रिंट करने जा रहे हैं। उसके लिए, हम निम्नलिखित कोड निष्पादित करेंगे।

BEGINdbms Qutput.put linef.Prp.gram started.' );FOR a IN 1… 5LOOPdbms_output.put_line(a);END LOOP:dbms_output.put_iine('Program completed.');END;/

कोड स्पष्टीकरण:

  • कोड लाइन 2 : "प्रोग्राम शुरू हुआ" कथन को प्रिंट करना।
  • कोड लाइन 3: कीवर्ड 'फॉर', लूप की शुरुआत को चिह्नित करता है और लूप_वर्णीय 'ए' घोषित होता है। अब इसका मूल्य 1 से 5 तक होगा
  • कोड लाइन 5: 'a' का मूल्य प्रिंट करता है।
  • कोड लाइन 6: कीवर्ड 'END LOOP' निष्पादन ब्लॉक के अंत को चिह्नित करता है।
  • पंक्ति 5 से कोड 'a' मान 6 तक पहुंचता रहेगा, क्योंकि स्थिति विफल हो जाएगी, और नियंत्रण लूप से बाहर हो जाएगा।
  • कोड लाइन 7: "प्रोग्राम पूरा हुआ" स्टेटमेंट को प्रिंट करना

स्थिर फंदा

लूप स्टेटमेंट को नेस्टेड भी किया जा सकता है। बाहरी और भीतरी लूप विभिन्न प्रकार के हो सकते हैं। नेस्टेड लूप में, बाहरी लूप के हर एक पुनरावृत्ति मूल्य के लिए, आंतरिक लूप को पूरी तरह से निष्पादित किया जाएगा।

LOOP -outerLOOP - innerEND LOOP;END LOOP;
सिंटैक्स स्पष्टीकरण:
  • उपरोक्त सिंटैक्स में, बाहरी लूप में एक और लूप होता है।
  • लूप किसी भी प्रकार के हो सकते हैं और निष्पादन की कार्यक्षमता समान होती है।

उदाहरण 1 : इस उदाहरण में, हम लूप स्टेटमेंट का उपयोग करके संख्या 1 से 3 तक प्रिंट करने जा रहे हैं। प्रत्येक संख्या को उसके मूल्य के रूप में कई बार मुद्रित किया जाएगा। उसके लिए, हम निम्नलिखित कोड निष्पादित करेंगे।

DECLAREb NUMBER;BEGINdbms output put line(‘Program started' );FOR a IN 1… 3LOOPb:=1;WHILE (a>=b)LOOPdbms output put line(a);b:=b+1;END LOOP;‭ END LOOP;‭ ‬dbms_output.put_line('Program completed' );END;/

कोड स्पष्टीकरण:

  • कोड लाइन 2 : चर 'बी' को 'NUMBER' डेटा प्रकार के रूप में घोषित करना।
  • कोड लाइन 4 : "प्रोग्राम शुरू हुआ" कथन को प्रिंट करना।
  • कोड लाइन 5: कीवर्ड 'फॉर', लूप की शुरुआत को चिह्नित करता है और लूप_वर्णीय 'ए' घोषित होता है। अब इसका मूल्य 1 से 3 तक होगा
  • कोड लाइन 7: प्रत्येक बार 'b' से '1' के मान को रीसेट करना।
  • कोड लाइन 8: इनर लूप चेक इन द कंडिशन ए> = बी।
  • कोड लाइन 10: 'a' के मूल्य को तब तक प्रिंट करता है जब तक उपरोक्त शर्त पूरी होती है।
  • कोड लाइन 14: "प्रोग्राम पूरा हुआ" स्टेटमेंट को प्रिंट करना

सारांश

लूप पाश के लिए
EXIT मानदंड जब काउंटर सीमा तक पहुंच जाए तो बाहर निकलें
प्रयोग लूप काउंट को निष्पादित करने के लिए उपयोग करने के लिए अच्छा है।