ハンドルネーム |
nishina
|
製品 |
OB |
タイトル |
デバッグ時のパラメータについて
|
メッセージ本文 |
パラメータを渡してカーソル順検索をしようとしていますがうまくいきません。 どうもパラメータの値が渡されていないようで、データがあるのに取得できていません。 以下にソースを書きます。間違っている記述について教えていただけますでしょうか。
パッケージの内容 CREATE OR REPLACE PACKAGE TEST IS p_cutoff_dt DATE; p_manno VARCHARS(10);
--カーソルの宣言 CURSOR gc_syain IS SELECT sya_id FROM syain WHERE edate = p_cutoff_dt AND manno = p_manno;
PROCEDURE main(p_cutoff_dt IN OUT DATE p_manno IN OUT VARCHARS); PROCEDURE create(p_cutoff_dt IN OUT DATE p_manno IN OUT VARCHARS); END TEST;
パッケージボディの内容 CREATE OR REPLACE PACKAGE BODY TEST IS
PROCEDURE main (p_cutoff_dt IN OUT DATE p_manno IN OUT VARCHARS) IS
BEGIN TEST.create(p_cutoff_dt,p_manno); END main;
PROCEDURE create (p_cutoff_dt IN OUT DATE p_manno IN OUT VARCHARS) IS rec_sya gc_syain%ROWTYPE; BEGIN
-- テーブル削除 DELETE AAAA;
COMMIT;
-- カーソルのオープン OPEN gc_syain;
LOOP -- カーソルの読みこみ FETCH gc_syain INTO rec_sya;
-- データが無ければループを抜ける EXIT WHEN gc_syain%NOTFOUND; -- AAAAテーブルにデータを挿入 INSERT INTO AAAA (sya_kb) VALUES (rec_sya.sya_kb); COMMIT;
END LOOP;
-- カーソルのクローズ CLOSE gc_syain;
COMMIT;
EXCEPTION WHEN OTHERS THEN -- カーソルがオープンしたままだったらカーソルのクローズ IF gc_syain%ISOPEN THEN CLOSE gc_syain; END IF;
ROLLBACK;
COMMIT;
END create;
END TEST; /
* PARAMETER VALUES * P_CUTOFF_DT : 2003/03/20 00:00:00 P_MANNO : A0894
とパラメータはきちんと入っているようなんですが・・・ 初心者です。なにとぞよろしくお願いします。
|
|