日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle 存储过程 stored procedure 查询一条记录或多条记录

發(fā)布時(shí)間:2023/12/10 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle 存储过程 stored procedure 查询一条记录或多条记录 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

創(chuàng)建基本表

-- Create table

create?table?USER_INFORMATION

(

P_ID????????????NUMBER,

USER_LOGIN_NAME?NVARCHAR2(30)

)

創(chuàng)建包:

create?or?replace?package?pack_test?is??

???????type?cur_test?is?ref?cursor;??

end?pack_test;?

/??

--這個(gè)不能少呀,加上這個(gè)就可以在sql/plus中運(yùn)行了,這個(gè)是結(jié)束符號

創(chuàng)建存儲過程

create?or?replace?procedure?proc_cur(p_id?in?number,p_cur?out?pack_test.cur_test)???

is???

?????? v_sql?varchar2(400);

begin??

???????if?p_id =?0?then???

??????????open?p_cur?for?select?*?from?user_information;???

???????else???

????????? v_sql :=?'select * from user_information where id =: p_id';???

??????????open?p_cur?for?v_sql?using?p_id;???

???????end?if;???

end?proc_cur;

測試存儲過程

-- Test statements here??

set?serveroutput?on

declare???

?v_id?number?:=?0;??

?v_row USER_INFORMATION%rowtype;?? --注意這里是表名

?p_cur pack_test.cur_test;

begin???

?proc_cur(v_id, p_cur);??

?loop??

????fetch?p_cur?into?v_row;??

????exit?when?p_cur%notfound;??

??? DBMS_OUTPUT.PUT_LINE(v_row.USER_LOGIN_NAME||'='||v_row.P_ID);??

?end?loop;??

?close?p_cur;??

end;?

/??

?--語句塊結(jié)束符號

轉(zhuǎn)載于:https://www.cnblogs.com/shihao/archive/2012/09/26/2704423.html

總結(jié)

以上是生活随笔為你收集整理的oracle 存储过程 stored procedure 查询一条记录或多条记录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。