下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1、創(chuàng)建存儲(chǔ)過(guò)程 create or replace procedure test(var_name_1 in type,var_name_2 out type) as -聲明變量 (變量名 變量類型 )begin-存儲(chǔ)過(guò)程的執(zhí)行體end test;打印出輸入的時(shí)間信息E.g:create or replace procedure test(workDate in Date) isbegindatedbms_output.putline('The input is:'|to_date(workDate,'yyyy-mm-dd&apo
2、s;);end test;2、變量賦值變量名 := 值 ;E.g:create or replace procedure test(workDate in Date) isx number(4,2);beginx := 1;end test;3、判斷語(yǔ)句 : if 比較式 then begin end; end if;E.g create or replace procedure test(x in number) isbeginif x >0 thenbeginx := 0 - x;end;end if;if x = 0 thenbeginx: = 1;end;end if;end t
3、est;4、For 循環(huán)For . in . LOOP-執(zhí)行語(yǔ)句end LOOP;(1)循環(huán)遍歷游標(biāo)create or replace procedure test() asCursor cursor is select name from student; name varchar(20);beginfor name in cursor LOOP begindbms_output.putline(name);end;end LOOP;end test;(2)循環(huán)遍歷數(shù)組create or replace procedure test(varArray in myPackage.TestArr
4、ay) as-( 輸入?yún)?shù) varArray 是自定義的數(shù)組類型,定義方式見標(biāo)題 6)i number;begini := 1;-存儲(chǔ)過(guò)程數(shù)組是起始位置是從1開始的,與java、C、C+等語(yǔ)言不同。因?yàn)樵贠racle中本是沒(méi)有數(shù)組的概念的,數(shù)組其實(shí)就是一張-表(Table),每個(gè)數(shù)組元素就是表中的一個(gè)記錄,所以遍歷數(shù)組時(shí)就相當(dāng)于從表中的第一條記錄開始遍歷for i in 1.varArray.count LOOPdbms_output.putline('The No.'| i | 'record in varArray is:&ap
5、os;|varArray(i);end LOOP;end test;5、While 循環(huán)while 條件語(yǔ)句 LOOPbegin end;end LOOP;E.gcreate or replace procedure test(i in number) asbeginwhile i < 10 LOOPbegini:= i + 1;end;end LOOP;end test;6、數(shù)組首先明確一個(gè)概念:Oracle中本是沒(méi)有數(shù)組的概念的,數(shù)組其實(shí)就是一張表(Table),每個(gè)數(shù)組 元素就是表中的一個(gè)記錄。使用數(shù)組時(shí),用戶可以使用 Oracle 已經(jīng)定義好的數(shù)組類型,或可根據(jù)自己的需要定義數(shù)組
6、 類型。(1)使用 Oracle 自帶的數(shù)組類型x array; - 使用時(shí)需要需要進(jìn)行初始化e.g:create or replace procedure test(y out array) isx array;beginx := new array();y := x;end test;(2)自定義的數(shù)組類型(自定義數(shù)據(jù)類型時(shí), 建議通過(guò)創(chuàng)建 Package 的方式實(shí)現(xiàn), 以便于管理 )E.g ( 自定義使用參見標(biāo)題 4.2) create or replace package myPackage is- Public type declarations type info is recor
7、d(name varchar(20), y number);type TestArray is table of info index by binary_integer;-此處聲明了一個(gè) TestArray 的類型數(shù)據(jù),其實(shí)其為一張存儲(chǔ) Info 數(shù)據(jù)類型的 Table 而已,及 TestArray 就是一張表,有兩個(gè)字 段,一個(gè)是name, 個(gè)是y。需要注意的是此處使用了Index by binary_integer編制該Table的索引項(xiàng),也可以不寫,直接寫成: type TestArray istable of info ,如果不寫的話使用數(shù)組時(shí)就需要進(jìn)行初始化:varArray my
8、Package.TestArray;varArray := new myPackage.TestArray();end TestArray;7. 游標(biāo)的使用Oracle 中 Cursor 是非常有用的,用于遍歷臨時(shí)表中的查詢結(jié)果。其相關(guān)方法和屬性也很多, 現(xiàn)僅就常用的用法做一二介紹:(1) Cursor 型游標(biāo) (不能用于參數(shù)傳遞 )create or replace procedure test() iscusor_1 Cursor is select std_name from student where.; -Cursor 的使用方式 1 cursor_2Cursor;beginsele
9、ct class_name into cursor_2 from class where .;-Cursor 的使用方式 2可使用 For x in cursor LOOP end LOOP; 來(lái)實(shí)現(xiàn)對(duì) Cursor 的遍歷end test;(2) SYS_REFCURSOR 型游標(biāo),該游標(biāo)是 Oracle 以預(yù)先定義的游標(biāo),可作出參數(shù)進(jìn)行傳遞create or replace procedure test(rsCursor out SYS_REFCURSOR) iscursor SYS_REFCURSOR; name varhcar(20);beginOPEN cursor FOR select name from student where . -SYS_REFCURSOR 只能通過(guò) 法來(lái)打開和賦值LOOPfetch cursor into name -SYS_REFCURSOR 只能通過(guò) fetch into 來(lái)打開和遍歷 cursor%NOTFOUND;-SYS_REFCURSOR 中 可使用 三個(gè)狀-%NOTFOU
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工負(fù)責(zé)人考試練習(xí)試卷附答案
- 語(yǔ)文《春酒》說(shuō)課稿
- 街頭錯(cuò)別字的調(diào)查報(bào)告(精彩6篇)
- xx省國(guó)家級(jí)產(chǎn)業(yè)園基礎(chǔ)設(shè)施項(xiàng)目可行性研究報(bào)告
- 供熱管道選址及路線規(guī)劃
- 2024年版建筑行業(yè)專業(yè)顧問(wèn)服務(wù)協(xié)議一
- 2024年度貨物倉(cāng)儲(chǔ)、運(yùn)輸合同中貨物損失、滅失責(zé)任界定3篇
- 珍珠飾品知識(shí)課程設(shè)計(jì)
- 汽車設(shè)計(jì)師課程設(shè)計(jì)
- 2024年清潔工職責(zé)與權(quán)益協(xié)議范例版B版
- GB/T 22412-2016普通裝飾用鋁塑復(fù)合板
- GB/T 19587-2017氣體吸附BET法測(cè)定固態(tài)物質(zhì)比表面積
- GB 7681-2008鍘草機(jī)安全技術(shù)要求
- 新員工入職培訓(xùn)手冊(cè)PPT
- 醫(yī)藥公司開票業(yè)務(wù)技巧課件
- 門窗安裝施工組織設(shè)計(jì)方案
- 華能玉環(huán)電廠1000MW汽輪機(jī)培訓(xùn)講義-課件
- NB∕T 10626-2021 海上風(fēng)電場(chǎng)工程防腐蝕設(shè)計(jì)規(guī)范
- 教學(xué)第11章組合邏輯電路-課件
- 幼年特發(fā)性關(guān)節(jié)炎1課件
- PCB常見不良品圖片及改善措施匯總
評(píng)論
0/150
提交評(píng)論