程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> Oracle中的包的使用

Oracle中的包的使用

編輯:Oracle教程

Oracle中的包的使用


Oracle中包的使用

使用程序包主要是為了實現程序的模塊化,程序包可以將相關的存儲過程,函數,變量,常量和游標等PL/SQL程序組合在一起,通過這種方式可以構供程序人員重用的代碼庫。另外,當首次調用程序包中的存儲過程或函數等元素是,Oracle會將整個程序包調入內存,在下次調用程序包中的元素時,Oracle就可以之際從內存中讀取,從而提程序的運行效率。

程序包主要包括兩個部分:包規范和包體。其中,

包規范用於列出包中可用的存儲過程、函數和游標等元素條目(不含這些元素的實際代碼),這些條目屬於公有項目,可以供所有的數據庫用戶訪問。

包體中則包含了元素的實際代碼,同時,也可以在包體中創建規范中沒有提到的項目,那麼這些項目都屬於私有項目,只能在包體中使用。

創建包規范

創建包規范需要使用CREATE PACKAGE 語句,其簡要語法如下

CREATE [OR REPLACE] PACKAGE package_name
     {IS|AS}
     package_specification;
     END package_name;
 - package_name 創建的包名
 - package_specification 用於列出用戶可以使用的公共存儲過程、函數、類型和對象

創建包體

創建包體需要使用CREATE PACKAGE BODY語句,並且在創建時需要指定已創建的包,其簡要語法如下:

CREATE [OR REPLACE] PACKAGE BODY package_name
{IS|AS}
package_body
END package_name;

實例

具體實例如下:
1.創建包規范

CREATE OR REPLACE PACKAGE common_pkg IS
FUNCTION tax(value IN NUMBER) RETURN NUMBER;
END common_pkg;

2.創建包體

CREATE OR REPLACE PACKAGE BODY common_pkg IS
FUNCTION tax(value IN NUMBER) RETURN NUMBER
IS
rate NUMBER:=0.08;
BEGIN 
RETURN (value*rate);
END tax;
END common_pkg;

調用包中的函數,

SELECT common_pkg.tax(sal) FROM emp;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved