講稿東軟課程lesson_第1頁
講稿東軟課程lesson_第2頁
講稿東軟課程lesson_第3頁
講稿東軟課程lesson_第4頁
講稿東軟課程lesson_第5頁
已閱讀5頁,還剩24頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Oracle 9i:Program With PL/SQL Lesson8:創建過程目標通過本課學習,應該掌握如下要點:完成本課程后, 您應當能夠:描述過程創建過程形式參數和實際參數之間的區別列舉不同參數模式的特性創建帶參數的過程調用過程在過程中處理異常刪除過程 什么是過程?過程是執行一個動作的子程序的一種類型過程可以作為一個方案對象被存儲在數據庫中,用于重復執行 創建過程的語法CREATE OR REPLACE PROCEDURE procedure_name(parameter1 mode1 datatype1,parameter2 mode2 datatype2,. . .)IS|ASP

2、L/SQL Block; REPLACE選項指示如果過程存在,它將被刪除并且用語句創建的新版本代替PL/SQL 塊,既可以用BEGIN開始也可以用局部變量的聲明開始,既可以用END結束也可以用ENDprocedure_name 結束開發過程形式參數與實際參數形式參數:在子程序說明的參數列表中聲明的變量例:CREATE PROCEDURE raise_sal(p_id NUMBER, p_amount NUMBER).END raise_sal;實際參數:在子程序呼叫的參數列表中引用的變量或表達式例:raise_sal(v_id, 2000) 過程的參數模式創建帶參數的過程INOUTIN OUT

3、默認模式必須被指定必須被指定值被傳遞到子程序返回到呼叫環境傳遞到子程序;返回到呼叫環境形式參數作為一個常數未初始化的變量初始化的變量實際參數可以是文字、表達式、常數或已初始化的變量必須是一個變量必須是一個變量可以被指定一個默認值不能被指定一個默認值不能被指定一個默認值IN參數:例 CREATE OR REPLACE PROCEDURE raise_salary (p_id IN employees.employee_id%TYPE)ISBEGIN UPDATE employees SET salary = salary * 1.10 WHERE employee_id = p_id;END r

4、aise_salary;/Procedure created OUT參數:例OUT參數:例CREATE OR REPLACE PROCEDURE query_emp (p_id IN employees.employee_id%TYPE, p_name OUT employees.last_name%TYPE, p_salary OUT employees.salary%TYPE, m OUT mission_pct%TYPE)ISBEGIN SELECT last_name, salary, commission_pct INTO p_name, p_salary, m FROM emplo

5、yees WHERE employee_id = p_id;END query_emp;/emp_query.sql Procedure created VARIABLE g_name VARCHAR2(25)VARIABLE g_sal NUMBERVARIABLE m NUMBEREXECUTE query_emp(171,:g_name,:g_sal,: m)PRINT g_name 查看OUT參數裝載并運行emp_query.sql腳本文件創建QUERY_EMP過程聲明主機變量,執行QUERY_EMP過程,并且打印全局變量G_NAME的值IN OUT參數查看IN OUT參數傳遞參數的方

6、法位置:實際參數與形式參數排列的順序相同指定:實際參數聯合其相應的形式參數以任意順序排列組合:實際參數的排列一些用位置,一些用指定 參數的默認值選項傳遞參數的例子聲明子程序select USER from dual;select SYSDATE from dual;從PL/SQL 匿名塊中調用過程從另一個過程中調用過程處理異常處理異常不處理異常不處理異常刪除過程刪除存儲在數據庫中的過程語法:DROP PROCEDURE procedure_name 例子:DROP PROCEDURE raise_salary; Procedure dropped 子程序的優勢容易維護增強數據的安全性與完整性增進性能增進代碼清晰性 小結在本課中,我們學習了:過程是執行動作的子程序可以用CREATE PROCEDURE命令創建過程可以編譯并且保存過程到數據庫中參數用于從主叫環境到過程傳遞數據有三種參數模式:IN, OUT和IN OUT 小結局部子程序是定義在另一個程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論