パッケージ初期化部というものを作成することで実現できます。
パッケージ初期化部とは、セッションから最初に呼び出されたときのみ実行されるコードのブロックです。Javaや.NETでいうコンストラクタのようなものです。
PL/SQLではセッション毎にパッケージインスタンスというものが生成され、パッケージ初期化部はパッケージインスタンス生成時のみ呼び出されます。
パッケージ初期化部はPACKAGE BODY内で宣言します。
通常、PACKAGE BODYにはPROCEDUREやFUNCTIONなどを書き、その中でBEGIN~ENDと書きますが、そういう記述は必要なく、直接BEGIN~ENDのブロックを書きます。
■宣言方法
--------------------------------------------------------
CREATE OR REPLACE PACKAGE BODY [パッケージ名]
IS
-- パッケージ初期化部
BEGIN
DECLARE
[変数の宣言]
BEGIN
--*** ここにコードを書きます ***
EXCEPTION
WHEN OTHERS THEN
[例外]
END;
END [パッケージ名];
--------------------------------------------------------
コードにはPROCEDUREやFUNCTIONと同じように記述できます。
セッションの最初だけ処理を行いたい場合はパッケージ初期化部を使うのが有効です。