![](/img/trans.png)
[英]How to return data from stored procedure in a view SQL Server 2008
[英]sql server stored procedure to return selected data
我无法在经典的ASP代码中使用以下存储过程来工作。 它应该返回数据行。 多谢您的协助。 谢谢
码:
Set cmdSessionProc = Server.CreateObject("ADODB.Command")
cmdSessionProc.ActiveConnection = conn
cmdSessionProc.CommandText = "GetDetails"
cmdSessionProc.CommandType = adCmdStoredProc
cmd.Parameters.Append cmd.CreateParameter("RetVal", adInteger, adParamReturnValue)
cmdSessionProc.Parameters.Append
cmdSessionProc.CreateParameter "SessionID", adInteger, adParamReturnValue
cmdSessionProc("SessionID")= required data value (int)
cmdSessionProc.execute
ALTER Procedure [xxxxxxx].[GetDetails]
(@ID int)
AS
SELECT *
FROM [xxxtablexxx]
WHERE [ID] = @ID
除了Andomar实际阅读结果集的答案外,我还注意到您还有其他一些问题。
cmdSessionProc.CommandText = "xxxxxxx.GetDetails"
。 实际上,您始终应该始终指定架构,并且出于性能考虑,不要让其默认。 adParamInput
,并且名称必须与存储的proc的参数名称匹配(因为您不必按照与proc中相同的顺序创建参数)。 实际上,我相信您也需要在字符串中使用@符号。 cmdSessionProc.Parameters.Append cmdSessionProc.CreateParameter "@ID", adInteger, adParamInput
我为所有页面提供功能,甚至是标准查询或SP我都使用此方法。 试试这个,希望它对您有用。
dsn = "" 'your SQL connection param
Set conn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
conn.mode = 3
conn.Open dsn
sql = "exec GetDetails 'yourparam1','yourparam2'"
rs.open sql, conn
'codes to manage the results here
'......
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.