hanswurst90
Goto Top

T- Sql For- Schleife

Hi,

ich habe ein Problem mit T-Sql: ich bin eine Prozedur am schreiben die mir von einer Tabelle "Projekte" alle Projekte zurück geben soll die einen bestimmten Projektleiter eingetragen haben. Daraufhin muss ich mit den Werten die mir zurückgegeben werden auf dieverse Tabellen zugreifen usw. usw.

Was ich bei dieser Prozedur brauche ist eine Art "For" bzw. Zählschleife in der ich auf die einzelnen "Rows" bzw. Projekte die mir zurück gegeben werden zugreifen muss.
Leider war ich im Internet bei der Suche nach einer For- Schleife in T-Sql bisher nich fündig geworden.

Gibt es in T-Sql eine For- Schleife, oder ähnliches? und wie sieht diese aus?

Vilen Dank für alle Antworten,
Die Hanswurst

Content-Key: 111848

Url: https://administrator.de/contentid/111848

Printed on: April 19, 2024 at 15:04 o'clock

Member: AndreasHoster
AndreasHoster Mar 19, 2009 at 10:57:35 (UTC)
Goto Top
Eine For Schleife wie in anderen Sprachen gibts nicht, aber das was Du erreichen willst macht man mit einem Cursor und der Fetch-Anweisung.
Hier ein kleines Beispiel:
-- Variable für Kundennummer deklarieren
DECLARE @KUNNR char(10)
-- Cursor für Abfrage deklarieren
DECLARE kontakte CURSOR FOR
Select KUNNR from A_KONTAKTE while Bezirk='10'  
-- Cursor öffnen
open kontakte
-- Kontakte durchgehen
FETCH NEXT
   FROM kontakte
   INTO @kunnr
-- Nur solange es noch Werte im Cursor gibt
WHILE @@FETCH_STATUS = 0
BEGIN
print 'Hier könnte man was mit der Kundennummer machen: ' + @kunnr  

   FETCH NEXT
   FROM kontakte
   INTO @kunnr
END
-- Cursor schließen
CLOSE kontakte
DEALLOCATE kontakte