0
Ich habe ein SQL-Skript mit einer Schleife. In jeder Iteration ändere ich die WHERE-Klausel. So bekomme ich mehrere Auswahlmöglichkeiten angezeigt. Aber mein .net Programm liest nur die erste Auswahl. Das SQL-Skript funktioniert in SSM.SqlDataReader ganze Abfrage lesen
Das ist mein SQL-Skript
while (@aktuellParam <= @countParam)
Begin
SELECT name1,
name2
FROM dbo.tableName
WHERE name like @var
SET @aktuellParam = aktuellParam+1
END
Das ist mein vb.net Code
Using reader As SqlClient.SqlDataReader = _server.ConnectionContext.ExecuteReader(script)
Dim lfdnr As Integer = 1
Do While reader.Read()
spaltenListe.Add(New ISpalten With
{
.Name1= reader.GetString(reader.GetOrdinal("name1")),
.Name2= reader.GetString(reader.GetOrdinal("name2"))
})
lfdnr = lfdnr + 1
Loop
reader.Close()
End Using
Lesen Sie über die Verwendung einer gemeinsamen Tabelle Ausdruck –
Das liegt daran, dass nachfolgende Auswahl tatsächlich in einer anderen Ergebnismenge sind. Ihr Leser muss nach jedem Lesevorgang ein .NextResult ausführen. – UnhandledExcepSean
Warum die rbar? Was ist los mit einem einzelnen SELECT- und BETWEEN-Operator? – mxix