Hallo Leute,
frohes neues. Also übermorgen erst. Aber ich denke mal, dass zur Zeit alle in Urlaub sind, bis auf mich vielleicht
Ich habe folgendes Problem. Mein System (SQL Server 2005) verträgt keinen Cursor in einem Cursor. Folgende Fehlermeldung taucht dann auf:
Mein Cursor schaut ungefähr so aus:
[highlight=sql]DECLARE @c_i_abteilungID int
DECLARE @c_vc_vorname varchar(500)
DECLARE c_abteilungenCursor CURSOR
FOR SELECT ID FROM [dbo].[Abteilung]
OPEN c_abteilungenCursor
FETCH NEXT FROM c_abteilungenCursor
INTO @c_i_abteilungID
WHILE (@@FETCH_STATUS = 0)
BEGIN
DECLARE c_selectUeberstundenCursor CURSOR
FOR SELECT vorname FROM STAMMDATEN
WHERE AbteilungID = @c_i_abteilungID
OPEN c_selectUeberstundenCursor
FETCH NEXT FROM c_selectUeberstundenCursor
INTO @c_vc_vorname
WHILE (@@FETCH_STATUS = 0)
BEGIN
SELECT @c_vc_vorname
FETCH NEXT FROM c_selectUeberstundenCursor
END
CLOSE c_selectUeberstundenCursor
DEALLOCATE c_selectUeberstundenCursor
FETCH NEXT FROM c_abteilungenCursor INTO @c_i_abteilungID
END
CLOSE c_abteilungenCursor
DEALLOCATE c_abteilungenCursor[/highlight]
Kann man evtl Einstellungen bzgl maximale Anzahl von Resultsets irgendwo vornehmen?
Muss ich das System wechseln, wenn ich sowas von einem System verlange? Oder muss man das anders lösen?
Als ich ein Metadaten Manager für eine Oracle Datenbank geschrieben habe, da hat die Datenbank nicht so rumgezickt.
Hat evtl wer eine andere Lösung?
Beste Grüße und ein Frohes Neues Jahr
Daman
frohes neues. Also übermorgen erst. Aber ich denke mal, dass zur Zeit alle in Urlaub sind, bis auf mich vielleicht
Ich habe folgendes Problem. Mein System (SQL Server 2005) verträgt keinen Cursor in einem Cursor. Folgende Fehlermeldung taucht dann auf:
Die Abfrage hat die maximale Anzahl von Resultsets überschritten, die im Ergebnisraster angezeigt werden können. Nur die ersten 100 Resultsets werden im Raster angezeigt.
[highlight=sql]DECLARE @c_i_abteilungID int
DECLARE @c_vc_vorname varchar(500)
DECLARE c_abteilungenCursor CURSOR
FOR SELECT ID FROM [dbo].[Abteilung]
OPEN c_abteilungenCursor
FETCH NEXT FROM c_abteilungenCursor
INTO @c_i_abteilungID
WHILE (@@FETCH_STATUS = 0)
BEGIN
DECLARE c_selectUeberstundenCursor CURSOR
FOR SELECT vorname FROM STAMMDATEN
WHERE AbteilungID = @c_i_abteilungID
OPEN c_selectUeberstundenCursor
FETCH NEXT FROM c_selectUeberstundenCursor
INTO @c_vc_vorname
WHILE (@@FETCH_STATUS = 0)
BEGIN
SELECT @c_vc_vorname
FETCH NEXT FROM c_selectUeberstundenCursor
END
CLOSE c_selectUeberstundenCursor
DEALLOCATE c_selectUeberstundenCursor
FETCH NEXT FROM c_abteilungenCursor INTO @c_i_abteilungID
END
CLOSE c_abteilungenCursor
DEALLOCATE c_abteilungenCursor[/highlight]
Kann man evtl Einstellungen bzgl maximale Anzahl von Resultsets irgendwo vornehmen?
Muss ich das System wechseln, wenn ich sowas von einem System verlange? Oder muss man das anders lösen?
Als ich ein Metadaten Manager für eine Oracle Datenbank geschrieben habe, da hat die Datenbank nicht so rumgezickt.
Hat evtl wer eine andere Lösung?
Beste Grüße und ein Frohes Neues Jahr
Daman
Comment