Einzelnen Beitrag anzeigen

Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#1

FIREBIRD und Hiearchien abfragen

  Alt 6. Mär 2008, 18:08
Datenbank: Firebird • Version: 2.0 • Zugriff über: IBX
Hallo
aufbauend auf dieser Diskussion habe
ich versucht die Lösung für den MS-SQL-Server auf Firebird 2.0 zu übertragen. Das ist mir grundsätzlich auch gelungen. Leider weiss ich nicht wie man eine
temporäre Tabelle in einer Firebird procedure anlegen kann.
Hätte da jemand ein Beispiel für micht?


Code:
CREATE PROCEDURE "SELECT_SUBTREE"
(
  "I_NODETEXT" VARCHAR(25) CHARACTER SET ISO8859_1
)
RETURNS
(
  "O_ID" INTEGER,
  "O_PARENTID" INTEGER,
  "O_NAME" VARCHAR(25) CHARACTER SET ISO8859_1
)
AS
DECLARE VARIABLE CHILD_ID INTEGER;
begin
  DELETE FROM SUBTREE;
  INSERT INTO SUBTREE (ID,PARENT_ID,NAME)
     SELECT a.ID, a.PARENT_ID, a.NAME
              FROM tree a
              WHERE LOWER(a.Name) = LOWER(:I_NODETEXT);
             
  FOR SELECT p.ID
    FROM subtree p
    INTO :CHILD_ID
    AS CURSOR C
      DO
       INSERT INTO SUBTREE (ID,PARENT_ID,NAME)
          SELECT a.ID, a.PARENT_ID, a.NAME
              FROM tree a
              WHERE a.PARENT_ID=:CHILD_ID;
             
  FOR SELECT x.ID,x.Parent_ID,x.Name
    FROM subtree x
    INTO :O_ID,:O_PARENTID,:O_NAME
  DO
    SUSPEND;
end
 ^
I come from outer space to save the human race
  Mit Zitat antworten Zitat