Hallo Experten,
ich würde gerne definierte Typen verwenden komme aber nicht dahinter!
Als erste habe ich folgendes gemacht was auch ohne Probleme funzt:
Package:
...
type PersData_RS is record (
MatchCode myTable.Matchcode%TYPE,
Anrede myTable.Anrede%TYPE,
name1 myTable.name1%TYPE,
name2 myTable.name2%TYPE,
Strasse myTable.Strasse%TYPE,
PLZ myTable.PLZ%TYPE,
ORT myTable.ORT%TYPE
);
type PersData_TBL is table of PersData_RS;
function PersData return PERSDATA_TBL pipelined;
...
Package Body:
...
function PersData return PersData_TBL pipelined AS
BEGIN
for CCur in(Select Matchcode,Anrede,name1,name2,Strasse,PLZ,ORT from myTable )
loop
pipe row (cCur);
end loop;
return;
END PersData;
...
Jetzt bin ich hergegangen und habe die Typen wie folgt definiert:
create or replace TYPE STA_PERSDATA_RS AS OBJECT
(
MatchCode Varchar2(40),
Anrede Varchar2(20),
name1 Varchar2(40),
name2 Varchar2(40),
Strasse Varchar2(80),
PLZ Varchar2(16),
ORT Varchar2(80)
);
und
create or replace TYPE STA_PERSDATA_TBL AS TABLE of "ESCPS_PORTALE"."STA_PERSDATA_RS";
Meine Frage ist nun wie muss ich die Code im Package ändern um die hinterlegte Typen zu verwenden?
Vielen Dank für Eure Mühe im voraus.
ich würde gerne definierte Typen verwenden komme aber nicht dahinter!
Als erste habe ich folgendes gemacht was auch ohne Probleme funzt:
Package:
...
type PersData_RS is record (
MatchCode myTable.Matchcode%TYPE,
Anrede myTable.Anrede%TYPE,
name1 myTable.name1%TYPE,
name2 myTable.name2%TYPE,
Strasse myTable.Strasse%TYPE,
PLZ myTable.PLZ%TYPE,
ORT myTable.ORT%TYPE
);
type PersData_TBL is table of PersData_RS;
function PersData return PERSDATA_TBL pipelined;
...
Package Body:
...
function PersData return PersData_TBL pipelined AS
BEGIN
for CCur in(Select Matchcode,Anrede,name1,name2,Strasse,PLZ,ORT from myTable )
loop
pipe row (cCur);
end loop;
return;
END PersData;
...
Jetzt bin ich hergegangen und habe die Typen wie folgt definiert:
create or replace TYPE STA_PERSDATA_RS AS OBJECT
(
MatchCode Varchar2(40),
Anrede Varchar2(20),
name1 Varchar2(40),
name2 Varchar2(40),
Strasse Varchar2(80),
PLZ Varchar2(16),
ORT Varchar2(80)
);
und
create or replace TYPE STA_PERSDATA_TBL AS TABLE of "ESCPS_PORTALE"."STA_PERSDATA_RS";
Meine Frage ist nun wie muss ich die Code im Package ändern um die hinterlegte Typen zu verwenden?
Vielen Dank für Eure Mühe im voraus.