溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

oracle中游標(biāo),數(shù)組的使用

發(fā)布時間:2020-07-03 05:05:31 來源:網(wǎng)絡(luò) 閱讀:2226 作者:lxg290 欄目:關(guān)系型數(shù)據(jù)庫

1) select * from cnbs_security_role_menu for update;


2)oracle 中游標(biāo)的使用: http://www.cnblogs.com/sc-xx/archive/2011/12/03/2275084.html

declare 

       --類型定義

      cursor c_job is

       select combine_no,plan_code,flag from rate_combine  where plan_code='C01' and rownum <10;

       --定義一個游標(biāo)變量

       c_row c_job%rowtype;

begin

       open c_job;

         loop

           --提取一行數(shù)據(jù)到c_row

           fetch c_job into c_row;

           --判讀是否提取到值,沒取到值就退出

           --取到值c_job%notfound 是false 

           --取不到值c_job%notfound 是true

           exit when c_job%notfound;

           dbms_output.put_line(c_row.combine_no||'-'||c_row.plan_code||'-'||c_row.flag);

         end loop;

       --關(guān)閉游標(biāo)

      close c_job;

end;



3)如果使用固定長度的數(shù)組,而且不需要在外部定義可以如下定義

declare 

   type ar is varray(15) of varchar2(12); --聲明數(shù)組類型

   rt ar:=ar('dd','ff','ss'); --聲明數(shù)組類型變量rt,并賦初值

   i integer:=1; 

begin

     

     for i in 1..rt.count loop

       -- rt(i):=i;

        dbms_output.put_line('count='||rt(i));

     end loop;

     

end;


4 )如果我們要使用的數(shù)組長度不能預(yù)計,我們可以按如下方法作:

declare

     TYPE numtab IS TABLE OF varchar2(50) INDEX BY BINARY_INTEGER; //定義一個數(shù)組類型;

     arr numtab; //使用這個類型聲明一個變量;

     i integer:=1;  

begin     

     for i in 1..100 loop

       arr(i):=i;//為變量賦值

       dbms_output.put_line('arr['||i||']='||arr(i));

     end loop;

     

     dbms_output.put_line('count='||arr.count);

end ;


5)--- 使用帶參數(shù)的游標(biāo);

declare

     CURSOR stock_cur(symbol_in VARCHAR2) IS 

       SELECT * FROM rate_combine_nr nr WHERE nr.combine_no=symbol_in;

       

     stock_info stock_cur%ROWTYPE;   

begin

  

   OPEN stock_cur('G600000001'); --打開游標(biāo);

   loop   

     FETCH stock_cur INTO stock_info; --從游標(biāo)中取值

     exit when stock_cur%notfound;

       dbms_output.put_line(stock_info.combine_no||'-'||stock_info.department_code);   

   end loop;

  close stock_cur; --關(guān)閉游標(biāo)

end;


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI