Ich habe versucht, eine Funktion erstellen (vielleicht wird die Prozedur besser sein?), Die eine Tabelle zurückgeben. Zur Zeit habe ich folgendes:SQL Oracle, Rückgabe einer Tabelle aus einer Funktion
CREATE OR REPLACE TYPE rowx AS OBJECT
(
nam1 VARCHAR2 (100),
nam2 VARCHAR2 (100)
);
/
CREATE OR REPLACE TYPE tablex
IS TABLE OF rowx;
/
CREATE OR REPLACE FUNCTION example(FS varchar2)
RETURN tablex
IS
tab tablex;
BEGIN
select y.ident as PARENT, x.ident as CHILD into tab
from relation2 rt
inner join plate x on rt.child = x.id
inner join plate y on rt.parent =y.id
where x.ident like 'string1' or y.ident like 'string2';
RETURN tab;
END;
Nach Kompilation über Funktion empfange ich ORA-00947. Irgendwelche Tipps?
Es wäre schön, wenn es eine einfache Möglichkeit, dies zu tun wäre, aber soweit ich weiß, die nächste Sache Oracle bietet pipeline Funktionen; Hier ist eine Verknüpfung mit Details. https://www.akadia.com/services/ora_pipe_functions.html Persönlich denke ich, dass sie in der Regel mehr Mühe als sie wert sind. – kfinity