पीएल / एसक्यूएल ट्यूटोरियल: पीएल / एसक्यूएल के बारे में आपको जो कुछ भी जानने की जरूरत है



PL / SQL ट्यूटोरियल विभिन्न उदाहरणों के साथ PL / SQL प्रोग्रामिंग को मास्टर करने के लिए आवश्यक सभी आवश्यक अवधारणाओं के सभी विस्तृत विवरण को शामिल करता है

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

PL / SQL क्या है?

यह प्रक्रियात्मक भाषा विस्तार के लिए है स्ट्रक्चर्ड क्वेरी लैंग्वेज । ओरेकल ने पीएल / एसक्यूएल बनाया जो ओरेकल पर चल रहे मिशन-महत्वपूर्ण अनुप्रयोगों के निर्माण के लिए एक अधिक व्यापक समाधान प्रदान करने के लिए एसक्यूएल की कुछ सीमाओं का विस्तार करता है ।





लोगो- pl / sql ट्यूटोरियल - edureka

विशेषताएं

  • पीएल / एसक्यूएल एक प्रक्रियात्मक भाषा की कार्यक्षमता प्रदान करता है जैसे निर्णय लेना, पुनरावृत्ति, आदि।

  • एकल आदेश का उपयोग करके, PL / SQL कई प्रश्नों का निष्पादन कर सकता है।



  • हम पीएल / एसक्यूएल इकाइयों जैसे कि फ़ंक्शंस, ट्रिगर्स, प्रक्रियाएं आदि का पुनः उपयोग कर सकते हैं, जो निर्माण के बाद डेटाबेस में संग्रहीत हैं।

  • PL / SQL में एक अपवाद हैंडलिंग ब्लॉक भी है जो PL / SQL में अपवाद को हैंडल करता है।

  • PL / SQL का उपयोग करके व्यापक त्रुटि जाँच भी संभव है



  • पीएल / एसक्यूएल में लिखे गए एप्लिकेशन अन्य हार्डवेयर के लिए पोर्टेबल होते हैं और प्रदान किए गए ऑपरेटिंग सिस्टम को ऑर्किल होना चाहिए।

PL / SQL बनाम SQL

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

ब्लॉक संरचनाएं PL / SQL में

PL / SQL आमतौर पर कोड को ब्लॉक में व्यवस्थित करता है। बिना नाम वाला कोड ब्लॉक एक अनाम ब्लॉक के रूप में जाना जाता है। इसे अनाम ब्लॉक के रूप में जाना जाता है क्योंकि यह ओरेकल डेटाबेस में सहेजा नहीं गया है। आइए हम PL / SQL में एक अनाम ब्लॉक पर एक नज़र डालें।

[घोषणा] घोषणा बयान [BEGIN] निष्पादन विवरण [अपवाद] अपवाद बयान END /

ऊपर दिखाए गए आरेख को देखते हुए, हम देख सकते हैं कि ब्लॉक संरचना को चार भागों में विभाजित किया गया है, अर्थात् घोषणा, शुरू, अपवाद और समाप्ति। आइए हम यह समझने की कोशिश करें कि पीएल / एसक्यूएल में ब्लॉक संरचना कैसे काम करती है। इन सभी अनुभागों में से, निष्पादन अनुभाग अनिवार्य है और बाकी सभी वैकल्पिक हैं।

  • डेक्लेयर कीवर्ड का उपयोग डिक्लेरेशन सेक्शन के लिए किया जाता है, जिसका उपयोग डेटा प्रकार और संरचनाओं जैसे कि चर, फ़ंक्शन आदि की घोषणा करने के लिए किया जाता है।

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

  • अपवाद कीवर्ड का उपयोग अपवाद अनुभाग के लिए किया जाता है। इसमें सभी अपवाद कथन शामिल हैं।

  • समाप्त कीवर्ड ब्लॉक के अंत को चिह्नित करता है और बैकवर्ड स्लैश the / 'पीएल / एसक्यूएल ब्लॉक को निष्पादित करने के लिए उस टूल को बताता है जिसका आप उपयोग कर रहे हैं (Oracle डेटाबेस टूल)।

यहाँ एक सरल उदाहरण है कि हम PL / SQL कोड का उपयोग कैसे कर सकते हैं।

BEGIN NULL END /

अब जब हम जानते हैं कि पीएल / एसक्यूएल में ब्लॉक संरचना कैसे काम करती है, तो आइए पीएल / एसक्यूएल के विभिन्न पहलुओं को समझते हैं जैसे कि वैरिएबल को मान देना, नामकरण और असाइन करना।

PL / SQL चर

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

परिवर्तनीय नामकरण नियम

PL / SQL नामकरण चर के लिए निम्नलिखित नियमों का पालन करता है।

  • चर 31 अक्षरों से अधिक नहीं हो सकता

  • चर का नाम ASCII वर्ण से शुरू होना चाहिए। चूँकि PL / SQL केस-संवेदी है, एक अपरकेस अक्षर और एक लोअरकेस अक्षर अलग-अलग चर होंगे।

  • पहले चरित्र के बाद, एक विशेष चरित्र ($, _) या किसी भी संख्या में होना चाहिए।

नामकरण की परंपरा

चर का उपयोग करने के लिए नीचे सूचीबद्ध नामकरण परंपराओं का उपयोग करें।

उपसर्ग डाटा प्रकार
v_VARCHAR2
n_संख्या
t_तबला
r_ROW
d_तारीख
b_BOOLEAN

घोषणा

यह समझने की कोशिश करें कि PL / SQL में चर घोषणा कैसे की जाती है

घोषणा में डेटा प्रकार के बाद चर नाम शामिल है और एक अर्धविराम द्वारा अलग किया गया है। निम्नलिखित उदाहरण है कि आप पीएल / एसक्यूएल में एक चर घोषित कर सकते हैं।

DECLARE v_name VARCHAR (25) n_age NUMBER (3) BEGIN NULL END

आप डेटा प्रकार की लंबाई भी जोड़ सकते हैं जैसा कि हमने ऊपर के उदाहरण में किया है।

जावा और जावास्क्रिप्ट के बीच संबंध

लंगर

एंकर मूल रूप से% TYPE कीवर्ड के उपयोग को संदर्भित करता है जो किसी तालिका में किसी विशेष स्तंभ के स्तंभ के डेटा प्रकार से जुड़े डेटा प्रकार के साथ एक चर घोषित करने के लिए है।

इसे समझने के लिए एक उदाहरण देखें। मान लें कि हमारे पास एक तालिका है, तो हम निम्नलिखित तरीकों से एंकर का उपयोग कर सकते हैं।

DECLARE v_name EMPLOYEE.NAME% TYPE n_age EMPLOYEE.AGE% TYPE BEGIN NULL END /

असाइनमेंट

परिवर्तनीय असाइनमेंट काफी आसान है, हम एक वेरिएबल को मान असाइन करने के लिए असाइनमेंट ऑपरेटर का उपयोग कर सकते हैं। निम्नलिखित उदाहरण से पता चलता है कि हम एक चर के लिए मान कैसे निर्दिष्ट कर सकते हैं।

DECLARE v_name VARCHAR (20) n_course VARCHAR (10) BEGIN v_name = 'edureka' v_course = 'sql' END /

इनिशियलाइज़ेशन

हम घोषणा अनुभाग में चर के लिए एक मूल्य भी इनिशियलाइज़ कर सकते हैं। निम्नलिखित उदाहरण से पता चलता है कि हम किसी वैरिएबल पर मानों को कैसे आरंभ कर सकते हैं।

DECLARE v_name VARCHAR (20) = 'edureka' n_course VARCHAR (10) = 'sql' BEGIN NULL END /

अब जब हम जानते हैं कि हम चर के साथ कैसे काम कर सकते हैं, तो हमें यह समझने की कोशिश करें कि हम PL / SQL में कार्यों का उपयोग कैसे करेंगे।

PL / SQL में फ़ंक्शन

PL / SQL में एक फ़ंक्शन मूल रूप से एक नामित ब्लॉक है जो एक मान लौटाता है। इसे एक सबरूटीन या एक उपप्रोग्राम के रूप में भी जाना जाता है, निम्नलिखित सिंटैक्स दिखाता है कि हम PL / SQL में फ़ंक्शन का उपयोग कैसे कर सकते हैं।

बनाएँ [या प्रतिक्रिया] समारोह फ़ंक्शन_नाम [पैरामीटर ([_1] [बाहर] data_type, पैरामीटर_2 [IN] [OUT] data_type, पैरामीटर_N [IN] [OUT] data_type: RETURN return_data_type IS BEGIN स्टेटमेंट return_data_type EXCEPTION

सबसे पहले, आपको कीवर्ड के बाद एक फ़ंक्शन नाम निर्दिष्ट करना होगा। फ़ंक्शन का नाम एक क्रिया के साथ प्रारंभ करना है। एक फ़ंक्शन में कोई भी, एक या अधिक पैरामीटर नहीं हो सकता है जो हम मापदंडों में निर्दिष्ट करते हैं। हमें प्रत्येक पैरामीटर के डेटा प्रकार को स्पष्ट रूप से निर्दिष्ट करना होगा, और फिर वह मोड आता है जो निम्नलिखित में से किसी एक का हो सकता है।

  • में - IN पैरामीटर केवल-पढ़ने के लिए पैरामीटर है।

  • बाहर - यह केवल लिखने वाला पैरामीटर है

  • अंदर बाहर - OUT पैरामीटर IN-read पैरामीटर है।

पीएल / एसक्यूएल में फ़ंक्शन का उपयोग कैसे करें, यह दिखाने के लिए यहां एक सरल उदाहरण दिया गया है।

क्रिएट या रिप्लेंक फंक्शन try_parse (iv_number IN VARCHAR2) रिटेन नंबर BEGIN RETURN to_number (iv_number) EXCEPTION है, जो अन्य लोगों को RETURN NULL END

एक समारोह बुला रहा है

आइए हम उस फ़ंक्शन को कॉल करने का प्रयास करें जिसे हमने निम्नलिखित उदाहरण में एक अनाम ब्लॉक में बनाया है।

SIZE 1000000 DECLARE n_x संख्या n_y संख्या n_z संख्या BEGIN n_x: = try_parse ('256') n_y: = try_parse ('29 .72 ') n_z: = try_parse (' pqrs ')' DB_PPUTPUTPUTPUTPUTPUTPUTPUTPUT 'पर सेट करें। n_y) DBMS_OUTPUT.PUT_LINE (n_z) END /

हम फ़ंक्शन को SELECT स्टेटमेंट में भी कॉल कर सकते हैं। अब जब हम जानते हैं कि हम PL / SQL में फ़ंक्शन का उपयोग कैसे कर सकते हैं, तो हम यह समझने की कोशिश करते हैं कि हम PL / SQL में प्रक्रियाओं के साथ कैसे काम करते हैं।

पीएल / एसक्यूएल प्रक्रिया

एक प्रक्रिया मूल रूप से एक ब्लॉक है जो एक विशिष्ट कार्य करता है। एक प्रक्रिया का उपयोग करके हम जटिल व्यावसायिक तर्क को लपेट या अतिक्रमण कर सकते हैं और उन्हें अनुप्रयोग और डेटाबेस परत दोनों में पुन: उपयोग कर सकते हैं।

पीएल / एसक्यूएल में प्रक्रिया कैसे काम करती है, इसे समझने के लिए एक सरल उदाहरण पर एक नज़र डालते हैं

सृजित या उत्तर प्राप्त करने की प्रक्रिया समायोजित करें_सामग्री (in_employee_id पर EMPLOYEES.EMPLOYEE_ID% TYPE, in_percent in NUMBER) IS BEGIN - कर्मचारी के वेतन का अद्यतन करें अद्यतन करें कर्मचारियों का वेतन = वेतन + वेतन in_percent / 100 WHERE कर्मचारी_द = in_employer

उपरोक्त उदाहरण में, हमारे पास दो पैरामीटर हैं, प्रक्रिया एक निश्चित प्रतिशत द्वारा वेतन को समायोजित करती है और अद्यतन कीवर्ड वेतन जानकारी में मूल्य को अपडेट करता है।

प्रक्रिया हैडर

कीवर्ड IS से पहले वाले खंड को प्रक्रिया हेडर कहा जाता है। प्रक्रियाओं के साथ काम करते समय निम्नलिखित कुछ बिंदुओं से परिचित होना चाहिए।

  • स्कीमा - यह स्कीमा का वैकल्पिक नाम है जो प्रक्रिया से संबंधित है।

  • नाम - प्रक्रिया का नाम जो एक क्रिया से शुरू होना चाहिए।

  • पैरामीटर - यह मापदंडों की वैकल्पिक सूची है।

  • AUTHID - यह निर्धारित करता है कि प्रक्रिया वर्तमान उपयोगकर्ता के विशेषाधिकार या प्रक्रिया के मूल मालिक के साथ निष्पादित होगी या नहीं।

प्रक्रिया शरीर

IS कीवर्ड के बाद आने वाली हर चीज को प्रक्रिया निकाय कहा जाता है। हमारे पास प्रक्रिया निकाय में घोषणा, अपवाद और निष्पादन विवरण हैं। फ़ंक्शन के विपरीत, एक प्रक्रिया में RETURN कीवर्ड का उपयोग निष्पादन को रोकने और कॉलर को नियंत्रण वापस करने के लिए किया जाता है।

एक प्रक्रिया कॉलिंग

आइए देखें कि हम पीएल / एसक्यूएल में एक प्रक्रिया कैसे कह सकते हैं।

EXEC process_name (param1, param2 और hellipparamN)

हम केवल EXEC कीवर्ड और प्रक्रिया नाम का उपयोग करके किसी भी पैरामीटर के साथ प्रक्रियाओं को कॉल कर सकते हैं। अब जब हम जानते हैं कि हम प्रक्रियाओं के साथ कैसे काम कर सकते हैं, तो हमें यह समझने की कोशिश करें कि पीएल / एसक्यूएल में नेस्टेड ब्लॉक कैसे उपयोग किए जाते हैं।

नेस्टेड ब्लॉक

एक नेस्टेड ब्लॉक कुछ भी नहीं है, लेकिन कार्यक्रम के लिए निष्पादन और असाधारण हैंडलिंग पर बेहतर नियंत्रण पाने के लिए एक या अधिक पीएल / एसक्यूएल ब्लॉकों का संयोजन है।

यहाँ एक नेस्टेड ब्लॉक का एक सरल उदाहरण है।

सेट SERVEROUTPUT पर आकार 1000000 घोषित n_emp_id EMPLOYEES.EMPLOYEE_ID% प्रकार: = & emp_id1 शुरू घोषित n_emp_id employees.employee_id% प्रकार: = & emp_id2 v_name employees.first_name% प्रकार कर्मचारियों से कहां employee_id = n_emp_id DBMS_OUTPUT.PUT_LINE ( ​​'प्रथम नाम v_name जांच का चयन करें first_name शुरू of कर्मचारी '|| n_emp_id ||' '' है || v_name) EXCEPTION WHEN no_data_found THEN DBMS_OUTPUT.PUT_LINE ('कर्मचारी' || n_emp_id || 'नहीं मिला') END END ||

उपरोक्त उदाहरण में बाहरी PL / SQL ब्लॉक को पैरेंट ब्लॉक या एन्कोडिंग ब्लॉक के रूप में जाना जाता है, दूसरी ओर इनर ब्लॉक को चाइल्ड ब्लॉक या संलग्न ब्लॉक के रूप में जाना जाता है।

दोनों ब्लॉकों में समान नामों के साथ चर का उपयोग करना एक महान विचार नहीं है क्योंकि निष्पादन के दौरान चाइल्ड ब्लॉक चर मूल ब्लॉक चर को ओवरराइड करेगा। ऐसा इसलिए होता है क्योंकि पीएल / एसक्यूएल अपने ब्लॉक के अंदर वैरिएबल को पहली प्राथमिकता देता है।

ब्लॉक लेबल

हम ब्लॉक लेबल के साथ इस समस्या को दूर कर सकते हैं जो हमें एक लेबल का उपयोग करके ब्लॉकों के अंदर चर के संदर्भ बनाने में मदद करता है।

यहां एक सरल उदाहरण दिखाया गया है कि हम एक ब्लॉक लेबल का उपयोग कैसे कर सकते हैं।

 <>DECLARE ... BEGIN ... END

ब्लॉक लेबल का उपयोग करने से कोड की पठनीयता में सुधार, बेहतर नियंत्रण प्राप्त करने और ब्लॉक के संदर्भ बनाने में मदद मिलती है। अब जब हम जानते हैं कि हम नेस्टेड ब्लॉक के साथ कैसे काम कर सकते हैं, तो आइए समझने की कोशिश करते हैं कि IF STATEMENT पीएल / एसक्यूएल में कैसे काम करता है।

इफ स्टेटमेंट

PL / SQL में तीन IF स्टेटमेंट हैं

  • तो अगर - यदि यह कथन सही है, तो यह सबसे सरल IF IFATEMENT है, यदि स्थिति गलत है, तो वह कुछ भी नहीं करेगा।

  • अगर तब या - इसमें बयानों के वैकल्पिक अनुक्रम के लिए ELSE क्लॉज जोड़ा जाता है।

  • IF-THEN-ELSEIF - यह हमें एक अनुक्रम में कई परीक्षण स्थितियों को निष्पादित करने की अनुमति देता है।

IF-THEN सिंटेक्स

कैसे परमाणु अजगर चलाने के लिए

IF स्थिति अनुक्रम  _of_statements END IF

IF-THEN-ELSE सिंटेक्स

IF स्थिति THEN क्रम_of_if_statements ELSE क्रम_of_else_statements END IF

IF-THEN-ELSEIF सिंटेक्स

IF कंडिशन 1 THEN अनुक्रम_ऑफ_स्टैटमेंट 1 ELSIF कंडिशन 2 तब अनुक्रम_ऑफ_स्टैटमेंट 2 ईएलएसई सीक्वेंस_ऑफ_स्टैटमेंट 3 अंत

अब जब हम IF STATEMENT के साथ कर रहे हैं तो PL / SQL में CASE स्टेटमेंट पर नजर डालते हैं।

मामला बयान

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

[<>] CASE [TRUE | चयनकर्ता] WHEN अभिव्यक्ति 1 तब अनुक्रम_ऑफ_स्टैटमेंट 1 जब अभिव्यक्ति 2 तब अनुक्रम_ऑफस्टैटमेंट 2 ... जब अभिव्यक्ति हो तो अनुक्रम_ऑफ_स्टैटमेंटएन [ईएलएसई अनुक्रम_ऑफ स्टेटमेंट्स + 1] END CASE [label_name]

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

चयनकर्ता द्वारा अनुसरण किया जाता है जब वह खोजशब्द होता है। यदि अभिव्यक्ति चयनकर्ता को संतुष्ट करती है तो THEN कीवर्ड निष्पादित होने के बाद संबंधित विवरण।

अब जब हम जानते हैं कि हम CASE स्टेटमेंट का उपयोग कैसे कर सकते हैं, तो हम यह समझने की कोशिश करते हैं कि हम PL / SQL में लूप स्टेटमेंट्स का उपयोग कैसे करेंगे।

लूप स्टेटमेंट

पीएल / एसक्यूएल में एक लूप स्टेटमेंट एक पुनरावृत्त कथन है जो आपको कई बार बयानों के अनुक्रम को निष्पादित करने की अनुमति देता है। यहाँ PL / SQL में लूप स्टेटमेंट के सिंटैक्स को दिखाने के लिए एक सरल उदाहरण दिया गया है।

LOOP क्रम_ऑफ_स्टैटेमेंट्स END LOOP

LOOP और END LOOP कीवर्ड के बीच कम से कम एक निष्पादन योग्य कथन होना चाहिए।

EXIT स्टेटमेंट के साथ लूप

बाहर निकलें और बाहर निकलें जब बयान आपको लूप से बाहर निकलने की अनुमति देते हैं। बाहर निकलें बयान लूप को सशर्त रूप से समाप्त कर देता है जबकि EXIT निष्पादन को बिना शर्त समाप्त करता है।

लोड ... स्थिति समाप्त होने पर समाप्त करें। लोड करें

लूप लेबल

नेस्टेड लूप में उपयोग किए जाने पर लूप काउंटर चर के नाम को क्वालिफाई करने के लिए लूप लेबल का उपयोग किया जाता है। निम्नलिखित एक लूप लेबल का सिंटैक्स है।

 <>LOOP क्रम_ऑफ_स्टैटेमेंट्स END LOOP लेबल

अब जब हम जानते हैं कि हम लूप स्टेटमेंट्स का उपयोग कैसे कर सकते हैं तो बेहतर समझ के लिए लूप स्टेटमेंट्स पर एक नज़र डालते हैं।

जबकि लूप स्टेटमेंट

जब तक निष्पादन शुरू नहीं होता है तब तक हम WHILE लूप स्टेटमेंट का उपयोग कर सकते हैं। निम्न वाक्यविन्यास का उपयोग PL / SQL में WHILE लूप स्टेटमेंट के लिए किया जाता है।

कब तक की स्थिति LOOP क्रम_ऑफ_स्टैटेमेंट्स END LOOP

वाक्यविन्यास में स्थिति एक बूलियन मान या अभिव्यक्ति है जो TRUE, FALSE या NULL होने का मूल्यांकन करती है। यदि स्थिति TRUE है, तो स्टेटमेंट निष्पादित किए जाएंगे, यदि यह FALSE है, तो निष्पादन बंद हो जाता है और नियंत्रण अगले निष्पादन योग्य स्टेटमेंट पर जाता है।

अब जब हम जानते हैं कि हम WHILE लूप स्टेटमेंट का उपयोग कैसे कर सकते हैं, तो आइए फॉर लूप स्टेटमेंट पर एक नज़र डालते हैं।

लूप स्टेटमेंट के लिए

PL / SQL में एक लूप स्टेटमेंट हमें कई बार निश्चित संख्या में स्टेटमेंट्स को निष्पादित करने की अनुमति देता है। निम्नलिखित PL / SQL में लूप स्टेटमेंट का उपयोग करने के लिए सिंटैक्स है

[REVERSE] लोअरबाउंड में लोअर_काउंटर के लिए..उच्च_ इनबाउंड LOOP अनुक्रम_ऑफ_स्टैटमेंट्स END LOOP

PL / SQL लूप के लिए एक INTEGER डेटा प्रकार के साथ स्वचालित रूप से एक स्थानीय वैरिएबल loop_counter बनाता है, ताकि आपको इसे स्पष्ट रूप से घोषित न करना पड़े। निचला भाग..हिगरबाउंड वह सीमा है जिस पर लूप पुनरावृत्त होता है। साथ ही, आपके पास LOOP और END LOOP कीवर्ड के बीच कम से कम एक निष्पादन योग्य कथन होना चाहिए।

अब जब हम जानते हैं कि हम PL / SQL में लूप स्टेटमेंट का उपयोग कैसे कर सकते हैं, तो आइए PL / SQL में असाधारण हैंडलिंग पर एक नज़र डालते हैं।

असाधारण हैंडलिंग

PL / SQL में किसी भी प्रकार की त्रुटि को एक अपवाद के रूप में माना जाता है। एक अपवाद को एक विशेष स्थिति के रूप में माना जा सकता है जो निष्पादन प्रवाह को बदल या बदल सकता है। PL / SQL में, दो प्रकार के अपवाद हैं।

  • सिस्टम अपवाद - जब यह किसी त्रुटि का पता लगाता है तो इसे PL / SQL रन-टाइम द्वारा उठाया जाता है।

  • प्रोग्रामर-डिफ़ाइंड अपवाद - इन अपवादों को एक विशिष्ट एप्लिकेशन में प्रोग्रामर द्वारा परिभाषित किया गया है।

एक अपवाद परिभाषित करना

पीएल / एसक्यूएल में एक अपवाद को उठाने से पहले घोषित किया जाना चाहिए। हम अपवाद का उपयोग करके अपवाद को परिभाषित कर सकते हैं जैसे हमने नीचे उदाहरण में किया है।

EXCEPTION_NAME बहिष्करण

एक अपवाद बढ़ाने के लिए, हम RAISE कीवर्ड का उपयोग करते हैं।

EXCEPTION_NAME को बढ़ाएँ

तो यह सब PL / SQL के बारे में था, मुझे आशा है कि इस लेख ने आपके ज्ञान में मूल्य जोड़ने में आपकी मदद की है। SQL या डेटाबेस के बारे में अधिक जानकारी के लिए, आप हमारी व्यापक पढ़ने की सूची यहाँ देख सकते हैं:

यदि आप MySQL पर एक संरचित प्रशिक्षण प्राप्त करना चाहते हैं, तो हमारी जाँच करें जो प्रशिक्षक के नेतृत्व वाले लाइव प्रशिक्षण और वास्तविक जीवन की परियोजना के अनुभव के साथ आता है। यह प्रशिक्षण आपको MySQL को गहराई से समझने में मदद करेगा और आपको इस विषय में निपुणता प्राप्त करने में मदद करेगा।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया टिप्पणी अनुभाग में इसका उल्लेख करें पीएल / एसक्यूएल ट्यूटोरियल “और मैं तुम्हारे पास वापस आ जाऊंगा।