[ASP.NET]Oracle使用函數及PACKAGE回傳資料集

[ASP.NET]Oracle使用函數及PACKAGE回傳資料集

前言:

今天在寫Oracle相關程式時,一時興起,研究一下如何使用函數或預存程序回傳

結果集,參考了底下2篇文章,是使用Package來回傳。

http://vongates.itpub.net/post/2553/24710

http://www.cnblogs.com/ipusr/articles/619759.html

什麼是Package

  • PACKAGE是PROCEDURE、FUNCTION的集合,意思為2種都可以寫在裡面,再依條件叫用。
  • PACKAGE包含兩部份,一個為規格(宣告與變數)、另一為實作(BODY)。

PAGEAGE實作:

1.建立PACKAGE規格,宣告函數、預存程序、宣告變數,本例只使用函數

clip_image001

2.建立PACKAGE主體

clip_image002

3.程式如何取回資料集

clip_image003

上方的範例測試OK後,心想那直接用函數應該也行吧,所以再用了一個函數來測試後,果

然也可以取回資料集。

函數實作:

1.建立函數,內容同上PACKAGE BODY內的FUNCTION寫法

clip_image004

2.程式如何取回資料集

clip_image005

最後…..撰寫工具也很重要,之前是使用AquaStudio去撰寫OracleSql,但寫函數及預存程序

都會出現語法錯誤的編譯,所以我改用由oracle提供的Oracle sql developer 目前是3.0.04.34

http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html

範例下載

clip_image006