sql >> Databasteknik >  >> RDS >> Oracle

Skickar en associativ array som en parameter mellan paket

Ja, det är säkert möjligt.

Det är svårt att förklara varför du får fel utan paketspecifikationsexempel, men i allmänhet för att skicka en användardefinierad typ som parameter bör du antingen med definiera typ DDL , eller definiera typen i paketspecifikationen.

Jag antar att du vill ha den senare varianten :)

Så här är ett exempel:

create or replace package TestPackage_1
as

type TTestType is table of varchar2(1) index by varchar2(1);

end TestPackage_1;
/

create or replace package TestPackage_2
as

procedure Dummy(aParam TestPackage_1.TTestType);

end TestPackage_2;
/

Du kan använda TTestType skriv in valfritt PL/SQL-block, men inte i SQL.



  1. Hur man modellerar för enkelt databasunderhåll

  2. Grafproblem:ansluta med NOCYCLE före ersättning i SQL-server?

  3. Hur man stoppar denna upprepning och grupperar efter datum

  4. Vägledning behövs:Backend SQL-logik för dynamiskt val av ett fält av användare i frontend