Oracle PL/SQL函數

Oracle PL/SQL函數,邏輯封裝重用

先前的記錄皆在匿名區塊進行相關演練,若要皆 PL/SQL 程式供其他人使用或是供其他應用程式使用,則必須建立成Fuction或是Stored Procedure,Oracle本身有提供內建函數,如同其他程式設計一般,使用者亦可以建立自己的函數。

建立函數語法如下

1
2
3
4
5
6
7
8
CREATE [OR REPLACE] FUNCTION 函數名稱
[(參數1 [IN | OUT | IN OUT] 資料型態 [, ...])] 
RETURN 資料型態
{IS | AS} 
    <宣告變數區域>
BEGIN
    RETURN 資料值;
END [函數名稱];

以下進行相關示範

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
-- 建立函數
CREATE FUNCTION TO_MY_DATE_CHAR(IN_DATE IN DATE)
RETURN VARCHAR2
IS
BEGIN
    RETURN TO_CHAR(IN_DATE, 'YYYY/MM/DD HH24:MI');
END;

-- 進行測試
BEGIN
    DBMS_OUTPUT.PUT_LINE('MY_DATE_CHAR: ' || TO_MY_DATE_CHAR(SYSDATE));
END;

執行結果

1
MY_DATE_CHAR: 2025/03/10 00:54