Rekursive Stored Procedures sind immer heikel, da z.B. der
MSSQL-Server eine Sperre eingebaut hat. sonst würde sich der Server aufhängen.
Man benötigt auch keine rekursive Routine, um so eine Baumstruktur zu erstellen.
Wenn dein Baum aber mal 1000000 Elemente enhält, dann blockierst Du den Server unnötig.
Mach es doch so:
Ließ zunächst nur die Elemente der 1.Ebene ein und stelle sie in einer Treeview dar. Jeder Baumknoten bekommt ein 'Dummy'-Child Eintrag, damit das [+] sichtbar ist. Klickt der Anwender nun auf ein [+], dann prüfst Du, ob der Dummy-Eintrag noch vorhanden ist. Wenn ja, dann löschst Du ihn, liest die Kinder dieses Knotens ein, hängst sie unter den angeklickten Knoten und fertig.