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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

激动,新手第一次小试oracle的存储过程

發(fā)布時間:2024/9/20 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 激动,新手第一次小试oracle的存储过程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

之前一直寫觸發(fā)器,期間一直接觸和聽說了存儲過程,好多天過去了,今天才第一次使用了存儲過程。

一,問題提出:http://zhidao.baidu.com/question/113921713.html

求一個oracle程序塊,循環(huán)插入A表一百行數(shù)據(jù).

就是定義一個變量,然后讓人他循環(huán)一百次,往數(shù)據(jù)庫里插入數(shù)據(jù). 插入的行只有一列是不一樣的,就是這個變量,其它一樣.請問如何寫. 表結(jié)構(gòu)就二列.一個是放這個變量 a列,一個是名稱列.create table A (a numeric,b varchar2(50) ) 有會的請賜教 ,謝謝

二,解決過程

1,創(chuàng)建表,需要在plsql中的command窗口

create table e (a numeric,b varchar2(50) );

2,創(chuàng)建存儲過程,在plsql中,和trigger的創(chuàng)建方式差不多。

create or replace procedure insert_a is temp varchar2(20):='aaaa'; beginfor i in 1..100 loopinsert into e(a,b) values(i,temp);end loop; end;

3,在command窗口調(diào)用存儲過程exec,注意調(diào)用成功之后,需要按下plsql的“寫入”按鈕,和使用update之后commit寫入一樣。

4,執(zhí)行之后的e表,100條記錄出來了。

三,oracle存儲過程詳解。轉(zhuǎn)自http://blog.163.com/study_notes/blog/static/17610324320118610611676/

存儲過程
1 什么是存儲過程?
?用于在數(shù)據(jù)庫中完成特定的操作或者任務(wù)。是一個PLSQL程序塊,可以永久的保存在數(shù)據(jù)庫中以供其他程序調(diào)用。

2 存儲過程的參數(shù)模式


存儲過程的參數(shù)特性:
?IN類型的參數(shù)?OUT類型的參數(shù)?IN-OUT類型的參數(shù)
值被?傳遞給子程序?返回給調(diào)用環(huán)境?傳遞給子程序
返回給調(diào)用環(huán)境
參數(shù)形式?常量?未初始化的變量?初始化的變量
使用時?默認類型?必須明確指定?必須明確指定


3 無參數(shù)存儲過程的使用:
CREATE OR REPLACE PROCEDURE 過程名 [(parameter,...)]
IS
定義變量
Begin
Plsql程序
End;

例:創(chuàng)建一個存儲過程,用于向數(shù)據(jù)庫中插入一條記錄。
第一步:創(chuàng)建
CREATE OR REPLACE PROCEDURE pro_1
IS
Begin
insert into person values (11,'aa','aav');
End;

第二步:在sql*plus中執(zhí)行該過程
exec pro_1;

第三步:通過JDBC使用存儲過程。
?private Connection conn = null;
?private ResultSet rs = null;
?private CallableStatement state = null;
?//調(diào)用一個無參數(shù)的存儲過程
?public void testPro()
?{
conn = Tools.getConnection();
try {
state = conn.prepareCall("{call pro_1}");
state.execute();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
?}


4 帶有IN類型參數(shù)的存儲過程的使用。
例:創(chuàng)建一個存儲過程,用于向數(shù)據(jù)庫中插入一條記錄。
第一步:創(chuàng)建
CREATE OR REPLACE PROCEDURE pro_2(id number,name varchar2,email varchar2)
IS
Begin
insert into person values (id,name,email);
End;
第二步:在sql*plus中執(zhí)行該過程
exec pro_2(12,'aaa','aaa');

第三步:通過JDBC使用存儲過程。
?//使用一個帶有 IN 類型參數(shù)的存儲過程
?public void testPro_in(int id,String name,String email)
?{
conn = Tools.getConnection();
try {
state = conn.prepareCall("{call pro_2(?,?,?)}");
state.setLong(1, id);
state.setString(2, name);
state.setString(3, email);
state.execute();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
?}

5 帶有out類型參數(shù)的存儲過程的使用。
例:創(chuàng)建一個存儲過程,用于返回數(shù)據(jù)庫中的Person表的總行數(shù)。

第一步:創(chuàng)建
CREATE OR REPLACE PROCEDURE pro_3(num out number)
IS
mynum number;
Begin
select count(*) into mynum from person;
num := mynum;
End;
或者
CREATE OR REPLACE PROCEDURE pro_3(num out number)
IS
Begin
select count(*) into num from person;
End;

第二步:在sql*plus中執(zhí)行該過程
declare
a number;
begin
pro_3(a);
dbms_output.put_line(a);
end;

第三步:通過JDBC使用存儲過程。
public void testPro_out()
?{
conn = Tools.getConnection();
try {
state = conn.prepareCall("{call pro_3(?)}");
state.registerOutParameter(1, Types.NUMERIC);
state.execute();
int num = state.getInt(1);
System.out.println(num);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
?}

6 帶有in-out類型參數(shù)的存儲過程的使用。
創(chuàng)建:
CREATE OR REPLACE PROCEDURE pro_4(num in out number)
IS
a number := 100;
Begin
num := a*num;
End;

sql*plus中執(zhí)行該過程
declare
a number := 12;
begin
pro_4(a);
dbms_output.put_line(a);
end;




?

總結(jié)

以上是生活随笔為你收集整理的激动,新手第一次小试oracle的存储过程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 成人黄色小说在线观看 | 日本免费一二区 | 国产51视频 | 中文在线资源天堂 | 欧美成人黄色网 | 国产精品搬运 | 亚洲人人夜夜澡人人爽 | 乱短篇艳辣500篇h文最新章节 | 尤物精品在线观看 | 日韩中文字幕在线看 | 国产日韩视频在线观看 | 华人永久免费 | 涩涩av | 无码国产69精品久久久久网站 | 中文字幕在线第一页 | 欧美日韩成人一区二区 | 绿帽人妻精品一区二区 | 先锋影音色 | gogo亚洲国模私拍人体 | 日本不卡在线观看 | 97人妻天天摸天天爽天天 | 大尺度av| 午夜一区二区三区免费 | 国产在线视频你懂得 | 高跟肉丝丝袜呻吟啪啪网站av | 亚洲成人h | 国产每日更新 | 色七七桃花综合影院 | 天天看天天爽 | 欧美日韩亚洲国产 | 国产精品久久久久久久久借妻 | 欧美 日韩 人妻 高清 中文 | 免费黄av| www.色网站| 毛片在线免费观看网址 | 香港a毛片 | 清冷男神被c的合不拢腿男男 | 成人免费一级片 | 国产三级在线观看完整版 | 泰剧19禁啪啪无遮挡 | 成人免费毛片观看 | 欧美激情综合网 | 激情欧美网站 | 青娱乐在线播放 | 欧美一级爱爱视频 | 国产婷婷色一区二区在线观看 | 免费av一区 | 日韩欧美视频一区 | 最近中文字幕在线中文视频 | 午夜视频久久久 | 国产视频一区二区三区在线播放 | 欧美aa大片 | 一区二区三区 中文字幕 | 人人草av | 中国一区二区视频 | 欧美性粗暴 | 久久中文字幕av | 成年人免费网站视频 | 日本高清www | 亚洲午夜av久久乱码 | 欧美性大交 | 91免费看网站 | 欧美 日韩 国产在线 | 人人九九精 | 国产丝袜久久 | 欧美人与野 | 91高清视频在线 | 免费看国产视频 | 久久久一二三四 | 99国产精品国产精品九九 | 这里只有精品999 | 日本高清免费观看 | 亚洲精品国产熟女久久久 | 亚洲熟妇丰满大屁股熟妇 | 欧美性猛交xxxx黑人交 | 亚洲+小说+欧美+激情+另类 | 国产sss| 亚洲国产日韩a在线播放性色 | 日日嗨av一区二区三区四区 | 午夜剧场欧美 | 综合国产精品 | 午夜天堂av | 国产精品三级久久久久久电影 | 色婷婷综合成人av | 涩涩屋视频 | 国产真实偷伦视频 | 西川结衣在线观看 | 日韩在线观看免费 | 亚洲av永久无码精品三区在线 | mm1313亚洲精品 | 国产一区二区三区在线观看视频 | а√天堂www在线天堂小说 | 看了下面会湿的视频 | 久久精品—区二区三区舞蹈 | 在线成人免费电影 | 精品一区二区三区久久 | 尤物最新网址 | 亚洲一级特黄毛片 | 蜜桃精品视频 |