open fields asp vbscript asp-classic adodb

vbscript - fields - Lectura de mĂșltiples conjuntos de registros



asp adodb stream (1)

rs.NextRecordset() es la forma correcta de llegar al siguiente conjunto de registros devuelto por un procedimiento almacenado u otro comando, por lo que su código cortado debería funcionar.

¿Qué no está funcionando para ti?

Por otro lado, espero que la variable strSql no se construya de la forma en que publicaste ( strSql = "Exec [dbo].[xyz] ''"&param1&"'', ''"&param2&"'', ''"&param3& "''" ), ya que es una vulnerabilidad clara de inyección SQL .

Tengo un proceso almacenado que devuelve 6 resultados de declaración seleccionados. Estoy tratando de usar un conjunto de registros para ejecutar sp y obtener registros para cada declaración de selección, pero obtengo 0 o registros vacíos cuando los leo,

¿Cómo puedo consultar el conjunto de registros con múltiples instrucciones de selección del procedimiento almacenado?

ex:

Set rs = Server.CreateObject("ADODB.Recordset") strSql = "Exec [dbo].[xyz] ''"&param1&"'', ''"&param2&"'', ''"&param3& "''" 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