sql >> Database teknologi >  >> RDS >> Oracle

PL/SQL:Fejl PLS-00306:forkert antal eller typer af argumenter i kald til udløst for taltabel

Grunden til, at du står over for PLS-00306 fejl er inkompatibilitet af NUMLIST samlingstype, defineret i pakkespecifikationen og NUMLIST samlingstype defineret i den anonyme PL/SQL-blok. Selvom definitionerne af disse to samlingstyper er de samme, er de ikke kompatible. I din anonyme PL/SQL-blok skal du deklarere og derefter gå ind i GETSERVICES_API procedure en variabel af PKGCOMSUPPORT_SERVICE.NUMLIST datatype.

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. Hvordan kan jeg indsætte JSON-objekt i Postgres ved hjælp af Java readyStatement?

  2. PostgreSQL-mod:Hvad er "resjunk"?

  3. SQLite3. Undtagelse:databasediskbilledet er forkert udformet

  4. Hvad er standard begrænsningsnavnet i PostgreSQL?