Uso del procedimiento almacenado en ASP clásica ... ejecutar y obtener resultados
Traté de resolver esto todo el día, pero no parece funcionar para mí. Me gustaría ejecutar un comando y devolver el resultado a un conjunto de registros.
El problema es una de dos cosas: o recibo una respuesta vacía o hay un problema con mi código. Sé con certeza que este comando debería obtener algunas líneas de la base de datos. yo añadíresponse.write
dentro del bucle, pero nunca se imprimen.
Aquí está el código:
Set conn = Server.CreateObject("ADODB.Connection")
conn.open "PROVIDER=SQLOLEDB;DATA SOURCE=X;DATABASE=Y;UID=Z;PWD=W;"
Set objCommandSec = CreateObject("ADODB.Command")
With objCommandSec
Set .ActiveConnection = Conn
.CommandType = 4
.CommandText = "usp_Targets_DataEntry_Display"
.Parameters.Append .CreateParameter("@userinumber ", 200, 1, 10, inumber)
.Parameters.Append .CreateParameter("@group ", 200, 1, 50, "ISM")
.Parameters.Append .CreateParameter("@groupvalue", 200, 1, 50, ismID)
.Parameters.Append .CreateParameter("@targettypeparam ", 200, 1, 50, targetType)
End With
set rs = Server.CreateObject("ADODB.RecordSet")
rs = objCommandSec.Execute
while not rs.eof
response.write (1)
response.write (rs("1_Q1"))
rs.MoveNext
wend
response.write (2)
EDITADO Después de revisar el código, siguiendo la respuesta de @Joel Coehoorn, la solución es:
set rs = Server.CreateObject("ADODB.RecordSet")
rs.oppen objCommandSec
en lugar de
set rs = Server.CreateObject("ADODB.RecordSet")
rs = objCommandSec.Execute