「PL/SQL パッケージの作成」ウィザードを使用して、PL/SQL パッケージ内に 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
...
PROCEDURE hire_emp (
p_empno NUMBER,
p_ename VARCHAR2,
p_job VARCHAR2,
p_sal NUMBER,
p_hiredate DATE DEFAULT sysdate,
p_comm NUMBER DEFAULT 0,
p_mgr NUMBER,
p_deptno NUMBER DEFAULT 10
);
...
END emp_admin;
- 「本体」タブをクリックして PL/SQL パッケージ本体を編集し、ストアード・プロシージャーを追加します。 次に例を示します。
--
-- 「emp_admin」パッケージのパッケージ本体。
--
CREATE OR REPLACE PACKAGE BODY emp_admin
IS
--
...
-- 新規従業員レコードを「emp」表に挿入するプロシージャー
--
PROCEDURE hire_emp (
p_empno NUMBER,
p_ename VARCHAR2,
p_job VARCHAR2,
p_sal NUMBER,
p_hiredate DATE DEFAULT sysdate,
p_comm NUMBER DEFAULT 0,
p_mgr NUMBER,
p_deptno NUMBER DEFAULT 10
)
AS
BEGIN
INSERT INTO emp(empno, ename, job, sal, hiredate, comm, mgr, deptno)
VALUES(p_empno, p_ename, p_job, p_sal,
p_hiredate, p_comm, p_mgr, p_deptno);
END;
...
--
END;
- パッケージを保存します。
PL/SQL ストアード・プロシージャーの多重定義は、同じ名前とタイプのすべてのルーチンが同じ PL/SQL パッケージ内にあるときに限って可能です。 PL/SQL パッケージ内では、プロシージャーまたは関数を、タイプと名前は同じだがパラメーターの数が異なるプロシージャーまたは関数で多重定義することができます。 PL/SQL パッケージ内の、多重定義されたパッケージまたは関数では、パラメーターの数が括弧内に表示されます。
Procedure02(1)
Procedure02(2)