Lesen mehrere recordsets
Ich habe eine Gespeicherte Prozedur gibt 6 Ergebnisse einer select-Anweisung.
Ich versuche, einen Datensatz zum ausführen von sp und abrufen von Datensätzen für die einzelnen select-Anweisung
aber ich bekomme 0 oder leere Datensätze, wenn ich Sie lese,
Wie kann ich die Abfrage des Datensatzes mit
mehrere select-Anweisungen aus
gespeicherte Prozedur?
ex:
Set rs = Server.CreateObject("ADODB.Recordset")
strSql = "Exec [dbo].[xyz] '"¶m1&"', '"¶m2&"', '"¶m3& "'"
rs.open strSql,CN,3,3
Do While Not rs.EOF
if rs.recordcount > 0 then
r1 = rs.GetString(, , ", ", "<BR>" )
else
r1 = 0
end if
rs.MoveNext
Loop
Set rs = rs.NextRecordset()
Do While Not rs.EOF
if rs.recordcount > 0 then
r2 = rs.GetString(, , ", ", "<BR>" )
else
r2 = 0
end if
rs.MoveNext
Loop
Du musst angemeldet sein, um einen Kommentar abzugeben.
rs.NextRecordset()
ist der richtige Weg, um auf das nächste recordset von einer gespeicherten Prozedur zurückgegeben oder anderen Befehl, so dass Ihr code snipped funktionieren sollte.Was nicht für Sie arbeiten?
Als ein beiseite, ich hoffe, dass die
strSql
variable wird nicht aufgebaut, wie Sie geschrieben (strSql = "Exec [dbo].[xyz] '"¶m1&"', '"¶m2&"', '"¶m3& "'"
), so ist dies ein klares SQL-Injection Schwachstelle.