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

OPEN का उपयोग करते समय एक ही बाइंड वैरिएबल को कई बार दोहराना... Oracle PL/SQL में डायनेमिक SQL संरचना के लिए

आपको पैरामीटर को USING क्लॉज में दो बार शामिल करना होगा:

 OPEN emp_cv FOR sql_stmt USING my_job, my_job;

यहां आपका उदाहरण है, लेकिन सरलीकृत:

DECLARE
   TYPE EmpCurTyp IS REF CURSOR;
   emp_cv   EmpCurTyp;
   emp_rec  varchar2(10);
   sql_stmt VARCHAR2(200);
   my_job   VARCHAR2(15) := 'X';
BEGIN

   OPEN emp_cv FOR 'select * from dual where dummy = :j or dummy = :j' 
    USING my_job, my_job;
   LOOP
      FETCH emp_cv INTO emp_rec;
      EXIT WHEN emp_cv%NOTFOUND;
   END LOOP;
   CLOSE emp_cv;
END;


  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 12c में अलग तरह से व्यवहार करती है

  3. पीएल/एसक्यूएल में एक सहयोगी सरणी कैसे क्रमबद्ध करें?

  4. शामिल होने में बहुत समय लगता है

  5. ऑरैकल संग्रहीत कार्यविधि में निर्देशिका से फ़ाइलों को हटाना