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

Oracle PL/SQL:PLS-00103 को हल करने में मदद करें:निम्न में से किसी एक की अपेक्षा करते समय प्रतीक LOOP का सामना करना पड़ा:यदि

DECLARE
    update_count integer := 0;
    prjt_name varchar2(100) := 'tttt';
    mysql varchar2(100);
                   tablename  varchar2(100);

    cursor my_cur is 
         select 'DUAL' 
            from dual
           where 'PROJECT_ID' = 'PROJECT_ID' and 'SANDBOX' = 'SANDBOX';

begin
    open my_cur;
    LOOP
    FETCH  my_cur into tablename;
      EXIT WHEN my_cur%NOTFOUND;
        update_count := 0;
        mysql := 'select count(*)  ' || ' from '
        || tablename
        || ' where  ''TTTT'' = upper('''
        || prjt_name
        || ''')' ;
      Execute immediate mysql INTO update_count;
        dbms_output.put_line (mysql);

  dbms_output.put_line (update_count);
  END LOOP;
CLOSE my_cur;
end;

मैंने आपके जैसे एक की कोशिश की। यह सफलतापूर्वक निष्पादित होता है

declare
    query varchar2(10000);
    update_count integer := 0;
    prjt_name varchar2(100) := '01213264B';
    cursor my_cur is 
           select table_name 
             from [email protected]_pos15 
             where column_name = 'PROJECT_ID' and owner = 'SANDBOX';
    tableName  varchar2(100);
begin
  open my_cur;
    loop
    fetch my_cur into tableName;
    exit when my_cur%NOTFOUND;
        update_count := 0;
        query := 'select count(t.project_id) as ''CNT'' from sandbox.'
        || tableName
        || '@adhoc_pos15 t'
        || ' where  t.project_id = (select project_id from [email protected]_pos15 where project_name = ''' || prjt_name || ''') ' ;
   execute immediate query into update_count;
     dbms_output.put_line (query);
     dbms_output.put_line (update_count);
  end loop;
close my_cur;
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 SQL - एकाधिक तालिकाओं से मानों की गणना करने के लिए क्वेरी

  2. [ए] Oracle.ManagedDataAccess.Client.OracleParameter को [B] Oracle.ManagedDataAccess.Client.OracleParameter पर नहीं डाला जा सकता है

  3. Oracle में TO_CHAR () का उपयोग करके दशमलव को हेक्साडेसिमल में कैसे बदलें

  4. WIDTH_BUCKET () Oracle में फ़ंक्शन

  5. आप कैसे बता सकते हैं कि .net कॉल द्वारा कौन सी tnsnames.ora फ़ाइल का उपयोग किया जाता है?