日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle pl/sql 包

發布時間:2023/12/18 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle pl/sql 包 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

包用于在邏輯上組合過程和函數,它由包規范和包體兩部分組成。
1)、我們可以使用create package命令來創建包,如:
i、創建一個包sp_package
ii、聲明該包有一個過程update_sal
iii、聲明該包有一個函數annual_income

--聲明該包有一個存儲過程和一個函數
create package sp_package is
procedure update_sal(name varchar2, newsal number);
function annual_income(name varchar2) return number;
end;

??

2)、建立包體可以使用create package body命令
給包sp_package實現包體

CREATE OR REPLACE PACKAGE BODY SP_PACKAGE IS
--存儲過程
PROCEDURE UPDATE_SAL(NAME VARCHAR2, NEWSAL NUMBER) IS
BEGIN
UPDATE EMP SET SAL = NEWSAL WHERE ENAME = NAME;
COMMIT;
END;

--函數
FUNCTION ANNUAL_INCOME(NAME VARCHAR2) RETURN NUMBER IS
ANNUAL_SALARY NUMBER;
BEGIN
SELECT SAL * 12 + NVL(COMM, 0) INTO ANNUAL_SALARY FROM EMP WHERE ENAME = NAME;
RETURN ANNUAL_SALARY;
END;
END;
/

????

3)、如何調用包的過程或是函數
當調用包的過程或是函數時,在過程和函數前需要帶有包名,如果要訪問其它方案的包,還需要在包名前加方案名。如:

--調用存儲過程
SQL> exec sp_package.update_sal('SCOTT', 8888);
--調用函數
var income NUMBER;
CALL sp_package.ANNUAL_INCOME('SCOTT') INTO:income;
print income;

參見:http://www.cnblogs.com/linjiqin/archive/2012/02/24/2367167.html

轉載于:https://www.cnblogs.com/GtShare/p/7520685.html

總結

以上是生活随笔為你收集整理的oracle pl/sql 包的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。