स्पष्ट कर्सर
स्पष्ट कर्सर वे कर्सर होते हैं जिन्हें आप घोषित करते हैं और उपयोग करते हैं।अंतर्निहित कर्सर
पीएल/एसक्यूएल आपको एक कर्सर घोषित किए बिना आपके कोड के हिस्से के रूप में सेलेक्ट स्टेटमेंट सहित एसक्यूएल स्टेटमेंट्स को शामिल करने की अनुमति देता है, जिसे एक निहित कर्सर कहा जाता है।रेफ कर्सर
एक कर्सर एक परिणाम सेट का संदर्भ देता है। आरईएफ कर्सर आपको एक पीएल/एसक्यूएल प्रोग्राम यूनिट से दूसरे में कर्सर संदर्भ पास करने की अनुमति देता है। दूसरे शब्दों में, यह आपको एक वेरिएबल बनाने की अनुमति देता है जो एक कर्सर प्राप्त करेगा और इसके परिणाम सेट तक पहुंच को सक्षम करेगा, लेकिन इस ब्लॉग में मैं केवल स्पष्ट और निहित कर्सर के लिए उदाहरण दे रहा हूं, मैं रेफ कर्सर के लिए उदाहरण दूंगा और दूसरे ब्लॉग में डायनामिक कर्सर .स्पष्ट कर्सर का एक उदाहरण:DECLARE nemployeeid NUMBER; प्रारंभ दिनांक दिनांक; अंतिम तिथि; sjobid VARCHAR2 (20); - कर्सर घोषित करें कर्सर करजॉब IS SELECT कर्मचारी_आईडी, start_date, end_date, job_id से hr.job_history;BEGIN OPEN curjob; लूप फ़ेच करजॉब इनटू नेप्लॉयीड, डेस्टार्टडेट, डेंडडेट, जॉबिड; जब कर्जदार% NOTFOUND से बाहर निकलें; DBMS_OUTPUT.put_line('कर्मचारी' || nemployeeid || 'नौकरी की थी' अंत लूप; CLOSE curjob;END;/स्पष्ट कर्सर के लिए एक ही उदाहरण नीचे दिया गया है, लेकिन लूप के लिए, लूप के लिए कर्सर अधिक स्मार्ट हैं क्योंकि उनमें मान प्राप्त करने के लिए चर घोषित करने की कोई आवश्यकता नहीं है और खोलने या बंद करने या यह जांचने की कोई आवश्यकता नहीं है कि क्या सूचक कर्सर के अंत में है। यहां उदाहरण दिया गया है:DECLARE CURSOR करजॉब IS SELECT Employee_id, start_date, end_date, job_id FROM hr.job_history;BEGIN for jh_rec IN curjob LOOP DBMS_OUTPUT.put_line('कर्मचारी' || jh_rec.employee_id || 'नौकरी थी' || jh_rec .job_id || 'के लिए' || ( jh_rec.end_date - jh_rec.start_date || 'दिन.')); END LOOP;END;/एक अंतर्निहित कर्सर उदाहरण:DECLARE nempno NUMBER; CURSOR curjob hr.job_history से कर्मचारी_आईडी, start_date, end_date, job_id का चयन करें; BEGIN - sql क्वेरी के नीचे hr.job_history से nempno में इम्प्लिक्ट कर्सर SELECT COUNT (*) का प्रकार है; DBMS_OUTPUT.put_line ('वहाँ हैं' || nempno || 'कर्मचारी इतिहास रिकॉर्ड।'); करजॉब लूप में jh_rec के लिए DBMS_OUTPUT.put_line('कर्मचारी' || jh_rec.employee_id || 'नौकरी थी' || jh_rec.job_id || ' for' || ( jh_rec.end_date - jh_rec.start_date || 'days.' )); अंत लूप; अंत;/