图解Oracle存储过程教程
1 Oracle的工具有PLSQL和Oracle自帶的SQL Developer,以下使用后者;
從開始菜單啟動SQL Developer;
?
2 進入以前用scott賬號建立的連接;
?
3 先輸入下述語句統計下各個表的記錄數;
看用哪個表做存儲過程的示例;
?
4 后來想到不如用SCOTT賬戶下自帶的表;Oracle自帶的表EMP內容如下;
?
5 做第一個簡單存儲過程;輸入下圖語句,執行,出現下圖錯誤;
?
6 再寫一個如下圖所示簡單存儲過程;執行;正確;結果如下圖;
?
7 改正5的錯誤;因為網頁拷過來的代碼有時候會包含全角字符,全角空格不容易發現;故出現“無效的字符”;改正后執行,正確,代碼和結果如下圖;
?
8 存儲過程返回結果集
Oracle不像SQLServer那樣在存儲過程中用Select就可以返回結果集,而是通過Out型的參數進行結果集返回的;
下圖代碼中,
cursor cursor_emp is select * from emp; ? ?-- 定義游標
row_emp cursor_emp%rowtype; ? ? ? ? ? ? ? -- 定義row_emp是游標中的行類型;
返回游標后循環輸出獲取的行集;
?
9 返回記錄數和使用select into 語句,代碼和結果如下圖;
?
10 存儲過程中的if語句;
輸入型參數不能作為賦值目標;出現下圖錯誤;
?
11 把參數類型改為 in out 類型,再編譯;正確;然后執行,輸入參數和執行結果如下圖;
?
?
12 再做一個返回結果集,返回EMP表的SAL,代碼和結果如下圖;
?
13 存儲過程中的while語句,代碼和結果如下圖;
以上代碼經調試無誤;下載:
http://pan.baidu.com/s/1eQ4FTAy
總結
以上是生活随笔為你收集整理的图解Oracle存储过程教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C#常量和编程实例
- 下一篇: 图解Oracle包实例