Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Kategorisierte Struktur sortieren (stored procedure/Cursor) (https://www.delphipraxis.net/112497-kategorisierte-struktur-sortieren-stored-procedure-cursor.html)

NormanNG 22. Apr 2008 14:59

Re: Kategorisierte Struktur sortieren (stored procedure/Curs
 
Hi,

ich mische mich auch nochmal ein :-D
Feste Stellenzahl geht auch mit meiner Lösung:

SQL-Code:
CREATE Procedure ListSubTree (@cat_id int)
as

declare @ChildID int
declare @Table Table (
  pfad varchar(100),
  ID INT,
  PID INT,
  NAME VARCHAR(1000)
)

-- 1.Zeile in die Tabelle

insert into @Table
  select cat_id, cat_id, cat_pid, cat_name from cate where cat_id = @cat_id


Declare c Cursor local for select ID from @Table
open c
fetch next from c into @ChildID
while @@Fetch_status = 0 begin

-- Mit jedem Schleifendurchlauf werden in einem Abwasch ALLE Kindknoten eingefügt

  insert into @Table
    select t.pfad + '-' + right('0000000000'+convert(varchar, cat_id),10), cat_id, cat_pid, cat_name -- <---- hier geändert
      from cate c
      join @table t on t.id = c.cat_pid
      where cat_pid = @ChildID
  fetch next from c into @ChildID
end
close c
deallocate c
select * from @Table order by pfad
GO

alzaimar 22. Apr 2008 15:01

Re: Kategorisierte Struktur sortieren (stored procedure/Curs
 
'right' gibts? Isja goil.

siles 22. Apr 2008 15:04

Re: Kategorisierte Struktur sortieren (stored procedure/Curs
 
Zitat:

Zitat von alzaimar
Du schummelst! :zwinker:

Hehe, scheint aber tatsächlich zu funktionieren, habe vorhin der von dir beschriebene Fall mit Id 1 und 10 auf der selben Ebene gemacht und damit wird es nun richtig angezeigt.

Ist bei dieser immer noch etwas nicht gut oder kann die so verwendet werden? :)

alzaimar 22. Apr 2008 15:10

Re: Kategorisierte Struktur sortieren (stored procedure/Curs
 
Das 'schummeln' habe ich ja auch revidiert und alles funktioniert tadellos (hatte das 'right' nicht gesehen)


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:32 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz