Hi Arja,
parameter yg kamu pakai adalah character, sedangkan
procedure mengharapkan ARRAY.
Coba:
exec give_me_an_array(NUM_ARRAY(1,2,3));
NUM_ARRAY(1,2,3) artinya inisialisasi sebuah object
bertipe NUM_ARRAY dengan value 1, 2 dan 3.
Regards,
tomi
--- arja <[EMAIL PROTECTED]> wrote:
> hi, minta bantuannya dong.
> masalahnya:
> saya buat stored procedure
>
> create or replace type NUM_ARRAY as table of number;
>
> create or replace
> procedure give_me_an_array( p_array in num_array
> )
> as
> begin
> for i in 1 .. p_array.count
> loop
> dbms_output.put_line( p_array(i) );
> end loop;
> end;
> /
> exec give_me_an_array('1,1,1');
> exec give_me_an_array('[1,1,1]');
> exec give_me_an_array('{1,1,1}');
> exec give_me_an_array('<1,1,1>');
> exec give_me_an_array('(1,1,1)');
>
> dicoba dengan cara di atas untuk manggil procedure
> itu tapi gak
> jalan dengan error:
> ORA-06550: line 1, column 7: PLS-00306: wrong number
> or types of
> arguments in call to 'GIVE_ME_AN_ARRAY' ORA-06550:
> line 1, column 7:
> PL/SQL: Statement ignored
>
> thaanks.
>
>
____________________________________________________________________________________
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now.
http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ