sql >> Database >  >> RDS >> Oracle

PL/SQL:Fout PLS-00306:verkeerd aantal of typen argumenten in aanroep tot geactiveerd voor tabel met getallen

De reden waarom u wordt geconfronteerd met de PLS-00306 fout is incompatibiliteit van NUMLIST collectietype, gedefinieerd in de pakketspecificatie en NUMLIST collectietype gedefinieerd in het anonieme PL/SQL-blok. Hoewel de definities van deze twee soorten verzamelingen hetzelfde zijn, zijn ze niet compatibel. In uw anonieme PL/SQL-blok moet u declareren en vervolgens doorgeven aan de GETSERVICES_API procedure een variabele van PKGCOMSUPPORT_SERVICE.NUMLIST gegevenstype.

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. Projectlinks werken niet op Wamp Server

  2. Gedachten over SQL Server 2019-edities

  3. Hoe MySQL-client automatisch opnieuw verbinden met MySQLdb inschakelen?

  4. Hoe ListView vullen met db in de activamap?