テーブル型をパラメータとしてプロシージャに渡したいと思います。
create or replace package FOO is
type FOOTYPE is record (
FOOTYPE_A varchar2(5) null,
FOOTYPE_B varchar2(5) null,
FOOTYPE_C varchar2(5) null
);
type FOOTYPETABLE is table of FOOTYPE;
...
procedure sendNew (
table_a in FOOTYPETABLE
) is
a number;
begin
...
end sendNew;
...
end FOO;
declare
type bartabletype is table of FOO.FOOTYPE index by binary_integer;
bartable bartabletype;
begin
bartable(0).FOOTYPE_A := '';
bartable(0).FOOTYPE_B := '';
bartable(0).FOOTYPE_C := '';
bartable(1).FOOTYPE_A := '';
bartable(1).FOOTYPE_B := '';
bartable(1).FOOTYPE_C := '';
FOO.sendNew(bartable);
end;
しかし、オラクルは次のように述べています。
「ora-00306 引数の数またはタイプが間違っています」。
なんで?