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

ओरेकल पीएल/एसक्यूएल प्रक्रिया के प्रारंभ खंड के बाद कर्सर कैसे घोषित करें

ऐसा करने के लिए, आपको एक नया ब्लॉक घोषित करना होगा:

for t in y loop 
    DECLARE
    cursor X IS ( 
                SELECT DISTINCT s.NIF PREMISE,a.COD_UNICOM READING, A.COD_LECT_AREA AREA
                FROM SUMCON s, LECT_AREAS a 
                WHERE a.COD_UNICOM  = t.FCODE
                AND s.NUM_SUM IN (select num_sum from RFC_UPD_NEW_MRSP_POOL where cod_unicom = t.FCODE)
                ); 
     BEGIN

        for met in x loop 
...
        end loop;
     END;

हालांकि, मुझे समझ नहीं आ रहा है कि आप इस कर्सर को कर्सर y के साथ घोषित क्यों नहीं कर सकते हैं, जिसे एक पैरामीटर के साथ परिभाषित किया गया है:

cursor X (p_FCODE RFC_UPD_NEW_MRSP_POOL.cod_unicom%TYPE) IS ( 
            SELECT DISTINCT s.NIF PREMISE,a.COD_UNICOM READING, A.COD_LECT_AREA AREA
            FROM SUMCON s, LECT_AREAS a 
            WHERE a.COD_UNICOM  = p_FCODE
            AND s.NUM_SUM IN (select num_sum from RFC_UPD_NEW_MRSP_POOL where cod_unicom = p_FCODE)
            ); 

तब आप कर्सर को इस प्रकार संदर्भित कर सकते हैं:

FOR met IN x(t.FCODE) LOOP


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. सी # 2010, ODP.net, कॉल संग्रहित प्रक्रिया पासिंग सरणी

  2. ओरेकल एपेक्स सूची का चयन करें और मूल्यों को छिपाएं

  3. नेटवर्क पर Oracle डेटाबेस का उपयोग कैसे करें?

  4. डायनामिक एसक्यूएल निष्पादित करने वाले ओरेकल पीएल/एसक्यूएल अज्ञात ब्लॉक से परिणामसेट/कर्सर कैसे वापस करें?

  5. इस संस्करण के साथ संगत एक एंटिटी फ्रेमवर्क डेटाबेस प्रदाता नहीं मिल सका