Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

PL/SQL:Kesalahan PLS-00306:nomor atau jenis argumen yang salah saat dipanggil untuk dipicu untuk tabel angka

Alasan mengapa Anda menghadapi PLS-00306 kesalahan adalah ketidakcocokan NUMLIST jenis koleksi, ditentukan dalam spesifikasi paket dan NUMLIST jenis koleksi yang ditentukan dalam blok PL/SQL anonim. Meskipun definisi dari kedua jenis koleksi tersebut sama, keduanya tidak kompatibel. Di blok PL/SQL anonim Anda, Anda harus mendeklarasikan dan kemudian meneruskan ke GETSERVICES_API prosedur variabel PKGCOMSUPPORT_SERVICE.NUMLIST tipe data.

create or replace package PKG as
  type t_numlist is table of number index by varchar2(50);
  procedure SomeProc(p_var in pkg.t_numlist);
end;
/

create or replace package body PKG as
  procedure someproc(p_var in pkg.t_numlist) is
  begin
    null;
  end;
end;
/

declare
  type t_numlist is table of number index by varchar2(50);
  l_var t_numlist;
begin
  pkg.someproc(l_var);
end;

ORA-06550: line 5, column 3:
PLS-00306: wrong number or types of arguments in call to 'SOMEPROC'

declare
  --type t_numlist is table of number index by varchar2(50);
  l_var pkg.t_numlist;
begin
  pkg.someproc(l_var);
end;

anonymous block completed


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ATAN() Fungsi di Oracle

  2. C#:Kesetaraan Tipe Data Oracle dengan OracleDbType

  3. Memformat String UUID tanpa REGEXP_REPLACE dan PL/SQL

  4. 2 Cara Memformat Angka dengan Nol Awal di Oracle

  5. Bagaimana menjalankan prosedur tersimpan di pengembang Oracle sql?