oracle PL/SQL 包的介紹(四)
阿新 • • 發佈:2017-07-07
tips pub erro date name and 結構 lean comm
PL/SQL 的包
1.邏輯相關的組件的組合 (變量,數據結構,異常,存儲過程,函數)
2.組成 : 定義 和 包體
-- 組成
包頭 : PUBLIC
包體 : PRIVATE
-- 包頭的語法
1 CREATE OR REPLACE PACKAGE package_name IS|AS 2 PUBLIC TYPE AND VARIABLE declarations 3 subprogram specifications 4 END [package_name];
--實例
1 CREATE OR REPLACE PACKAGE comm_pkg IS|AS 2 std_comm NUMBER:= 0.10; --變量 3 PROCEDURE reset_comm(new_comm NUMBER); -- 存儲過程 4 END comm_pkg;
--包體的語法
--tips :查找包編譯錯誤 :select * from user_errors where name=‘COMM_PKG‘;(包名大寫)
1 CREATE OR REPLACE PACKAGE BODY comm_pkg IS 2 -- 函數 3 FUNCTION validate_comm(comm NUMBER) RETURN BOOLEAN IS 4 max_comm employees.commission_pct%TYPE; 5 BEGIN 6 SELECT MAX(commission_pct) INTO max_comm FROM employees; 7 RETURN (comm BETWEEN 0.0 AND max_comm); 8 END validate_comm; 9 --存儲過程 10 PROCEDURE reset_comm(new_comm NUMBER) IS 11 BEGIN 12 IF validate_comm(new_comm) THEN 13 std_comm := new_comm; 14 ELSE 15 raise_application_error(-20210,‘bad commission‘); 16 END IF; 17 END reset_comm; 18 19 END comm_pkg;
oracle PL/SQL 包的介紹(四)