「新規 PL/SQL パッケージ」ウィザードを使用して、PL/SQL パッケージ内に PL/SQL ユーザー定義関数を作成できます。
手順
PL/SQL ユーザー定義関数をデータ開発プロジェクトから作成するには、以下のようにします。
- データ・プロジェクト・エクスプローラーで、「PL/SQL パッケージ」フォルダー・スキーマを右クリックして、をクリックします。 「新規 PL/SQL パッケージ」ウィザードが開きます。
- ウィザードのステップを完了します。
このウィザードは、PL/SQL パッケージを作成して、それを「PL/SQL パッケージ」フォルダーに追加します。PL/SQL パッケージの仕様がルーチン・エディターで開きます。
- 仕様に関数の名前および変数を追加します。例:
CREATE OR REPLACE PACKAGE emp_admin
IS
...
FUNCTION SampleFunction RETURN integer;
...
END emp_admin;
- 「本体」タブをクリックして PL/SQL パッケージ本体を編集し、関数を追加します。 次に例を示します。
--
-- 「emp_admin」パッケージのパッケージ本体。
--
CREATE OR REPLACE PACKAGE BODY emp_admin AS
FUNCTION hire_emp (name VARCHAR2, job VARCHAR2,
mgr NUMBER, hiredate DATE, sal NUMBER, comm NUMBER,
deptno NUMBER) RETURN NUMBER IS
END;
- パッケージを保存します。
タスクの結果
デフォルトでは、パッケージを作成しても、データベースにそのパッケージは登録されません。データベースにパッケージを登録するには、そのパッケージをデプロイする必要があります。
PL/SQL UDF の多重定義は、同じ名前とタイプのすべてのルーチンが同じ PL/SQL パッケージ内にあるときに限って可能です。 PL/SQL パッケージ内では、プロシージャーまたは関数を、タイプと名前は同じだがパラメーターの数が異なるプロシージャーまたは関数で多重定義することができます。 PL/SQL パッケージ内の多重定義されたプロシージャーまたは関数では、パラメーターの数が括弧内に表示されます。
Function(1)
Function(2)
PL/SQL パッケージを作成したら、パッケージをデプロイして実行できます。