oracle 動態表名的遊標寫法

來源:互聯網
上載者:User

        在開發中,經常會碰到動態表名的遊標的寫法,正好在工作中碰到一個,如下所示:

 

declare
  stralltable varchar2(100);
  TYPE cur_typ IS REF CURSOR;
  c             cur_typ;

  c_id        number(18);
  c_code    varchar2(100);
begin
   for c_table in (select t.TABLE_NAME
                    from user_tab_columns t
                   where t.table_name like upper('pne_%')
                             and t.COLUMN_NAME = 'CODE') loop
 
    stralltable := 'select id,code from ' ||
                   c_table.TABLE_NAME;
    open c for stralltable;
    loop
      fetch c
        into c_id, c_code;
      exit when c%notfound;
    
          -- 此處可以寫自已的處理代碼
    end loop;
    
      close c;
  end loop; 
end;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.