激情五月天婷婷,亚洲愉拍一区二区三区,日韩视频一区,a√天堂中文官网8

<ul id="buwfs"><strike id="buwfs"><strong id="buwfs"></strong></strike></ul>
    <output id="buwfs"></output>
  • <dfn id="buwfs"><source id="buwfs"></source></dfn>
      <dfn id="buwfs"><td id="buwfs"></td></dfn>
      <div id="buwfs"><small id="buwfs"></small></div>
      <dfn id="buwfs"><source id="buwfs"></source></dfn>
      1. <dfn id="buwfs"><td id="buwfs"></td></dfn>
        始創(chuàng)于2000年 股票代碼:831685
        咨詢(xún)熱線:0371-60135900 注冊(cè)有禮 登錄
        • 掛牌上市企業(yè)
        • 60秒人工響應(yīng)
        • 99.99%連通率
        • 7*24h人工
        • 故障100倍補(bǔ)償
        全部產(chǎn)品
        您的位置: 網(wǎng)站首頁(yè) > 幫助中心>文章內(nèi)容

        Oracle帶游標(biāo)的存儲(chǔ)過(guò)程在plus中的調(diào)用實(shí)例

        發(fā)布時(shí)間:  2012/9/5 17:08:13

        之前在帖子 http://www.linuxidc.com/Linux/2012-07/65117.htm 里回答了一些網(wǎng)友的關(guān)于怎么穿件一個(gè)返回記錄集合的存儲(chǔ)過(guò)程。想必很多網(wǎng)友已經(jīng)很明白了,這里就不多講了。

        怎么調(diào)用含游標(biāo)的存儲(chǔ)過(guò)程在sqlplus

        Oracle怎么執(zhí)行帶游標(biāo)的過(guò)程?-
         


        給你一個(gè)例子


        --游標(biāo)使用(游標(biāo)其實(shí)是一個(gè)放入內(nèi)存臨時(shí)表)
        declare
           money cms3_simcard.card_fee%type :=0; --定義與表字段相同類(lèi)型
           cursor mycursor is --定義游標(biāo)
                  select * from cms3_simcard
                  where return_flag = 1 and msisdn like '138%';
           my_record mycursor%rowtype;  --定義游標(biāo)記錄類(lèi)型
           Counter int :=0;
          
        begin
           open mycursor;  --打開(kāi)游標(biāo)
           if mycursor%isopen  then  --判斷打開(kāi)成功
           loop --循環(huán)獲取記錄集
             fetch mycursor into my_record; --獲取游標(biāo)中的記錄
                 if mycursor%found then  --游標(biāo)的found屬性判斷是否有記錄
                    dbms_output.put_line(my_record.card_fee);
                 else
                    exit;
                 end if;
           end loop;
           else
             dbms_output.put_line('游標(biāo)沒(méi)有打開(kāi)');
           end if;
          close mycursor;
        end;
        如果你要問(wèn)我程序里怎么調(diào)用 那你就不要問(wèn)了 因?yàn)槟莻(gè)太多知道了 很少有人問(wèn)到。 廢話不多說(shuō) 上實(shí)例了

        首先看下t1的表結(jié)構(gòu)

        SQL> desc T1  
         名稱(chēng)                                      是否為空? 類(lèi)型  
         ----------------------------------------- -------- ---------------------   
          
         D                                         NOT NULL DATE  
         A                                                  NUMBER(38)  
         B                                                  NUMBER(38)  
         C                                                  NUMBER(38) 
        看下T1的表里的數(shù)據(jù)情況

        SQL> select * from t1;  
          
        D                       A          B          C  
        -------------- ---------- ---------- ----------   
        12-3月 -11            102         21         15  
        14-3月 -11            100         58         73  
        15-3月 -11            105                    87 
        和上一個(gè)帖子一樣 首先創(chuàng)建一個(gè)包先

        SQL> create or replace package pkg_package  
          2  as  
          3      type type_cursor is ref cursor;  
          4      type type_record is record  
          5      (  
          6          test01 DATE,  
          7          test02 NUMBER(38),  
          8          test03 NUMBER(38) ,  
          9          test04 NUMBER(38)  
         10      );  
         11  end;  
         12  /  
          
        程序包已創(chuàng)建。 
        創(chuàng)建一個(gè)帶游標(biāo)的的存儲(chǔ)過(guò)程也就是一個(gè)返回記錄集合的存儲(chǔ)過(guò)程

        SQL> create or replace procedure p_temp_procedure  
          2  (  
          3      cur_out_arg out pkg_package.type_cursor  
          4  )  
          5  is  
          6  begin  
          7      open cur_out_arg for select * from T1;  
          8  end;  
          9  /  
          
        過(guò)程已創(chuàng)建。 
        該有的數(shù)據(jù)都有了,接著重點(diǎn)來(lái)了。  調(diào)用存儲(chǔ)過(guò)程返回記錄集合

        SQL> declare  
          2      cur_out_arg pkg_package.type_cursor;  
          3      rec_arg pkg_package.type_record;  
          4  begin  
          5      dbms_output.put_line('------------------------');  
          6      p_temp_procedure(cur_out_arg);  
          7      loop  
          8          fetch cur_out_arg into rec_arg;  
          9         exit when cur_out_arg%notfound;  
         10         dbms_output.put_line(rec_arg.test01||' '||rec_arg.test02||' '||rec_a  
        rg.test03||''||rec_arg.test04);  
         11      end loop;  
         12  end;  
         13  /  
        ------------------------   
        12-3月 -11 102 2115  
        14-3月 -11 100 5873  
        15-3月 -11 105 87  
          
        PL/SQL 過(guò)程已成功完成。  
          
        SQL> 


        本文出自:億恩科技【mszdt.com】

        服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

      2. 您可能在找
      3. 億恩北京公司:
      4. 經(jīng)營(yíng)性ICP/ISP證:京B2-20150015
      5. 億恩鄭州公司:
      6. 經(jīng)營(yíng)性ICP/ISP/IDC證:豫B1.B2-20060070
      7. 億恩南昌公司:
      8. 經(jīng)營(yíng)性ICP/ISP證:贛B2-20080012
      9. 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
      10. 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-60135900
      11. 專(zhuān)注服務(wù)器托管17年
        掃掃關(guān)注-微信公眾號(hào)
        0371-60135900
        Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號(hào)總部企業(yè)基地億恩大廈  法律顧問(wèn):河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號(hào)
          0
         
         
         
         

        0371-60135900
        7*24小時(shí)客服服務(wù)熱線