|
分類:[データベース全般]
2014/06/20(Fri) 16:08:52 編集(投稿者)
<pre><pre>わからない所があるので教えてください!
Oracleのパッケージ実行の場合に引数がPL/SQL表を引数とする場合、 無名ブロックでパッケージを実行する場合に色々試してみてはいるんですが。。 下記の場合で実行した場合にエラーとなりました。 PLS-00306:'M_TEST'の呼出しで、引数の数または型が正しくありません。 同じ型でやってるつもりでしたが。。どう変更したらいいのでしょう。
パッケージ-------------------------------------------------------------------------
CREATE OR REPLACE PACKAGE TEST_PACK AS TYPE TBL_TEST_TESTID IS TABLE OF SCOTT.TEST.TESTID%TYPE INDEX BY BINARY_INTEGER; PROCEDURE M_TEST(inTEST_TESTID IN TBL_TEST_TESTID); END TEST_PACK; / SHOW ERRORS
CREATE OR REPLACE PACKAGE BODY TEST_PACK AS TEST_TESTID TBL_TEST_TESTID;
PROCEDURE M_TEST(inTEST_TESTID IN TBL_TEST_TESTID) IS BEGIN NULL; EXCEPTION WHEN OTHERS THEN NULL; END; END TEST_PACK; / SHOW ERRORS COMMIT; パッケージ終わり-------------------------------------------------------------------------
無名ブロック----------------------------------------------------------------------- DECLARE TYPE TBL_TEST_TESTID IS TABLE OF SCOTT.TEST.TESTID%TYPE INDEX BY BINARY_INTEGER; TEST_TESTID TBL_TEST_TESTID; BEGIN SCOTT.TEST_PACK.M_TEST(TEST_TESTID); EXCEPTION WHEN OTHERS THEN NULL; END; / EXIT; 無名ブロックおわり----------------------------------------------------------------------- </pre></pre></pre></pre>
|