Tsql ASP从存储过程返回输出值

Tsql ASP从存储过程返回输出值,tsql,stored-procedures,asp-classic,Tsql,Stored Procedures,Asp Classic,如何从存储过程返回值并将其分配给变量,以便在ASP页面上使用 返回值的存储过程称为sp_Auction_PaymentEwayXMLReceive。 输出变量称为ReturnedMsg 我目前的代码是: Dim Connection Dim sSQL, sConnString sConnString="DRIVER={SQL Server};SERVER=XXXX;UID=XXXX; PWD=XXXX;DATABASE=XXXX;" sSQL = "sp_Auction_PaymentE

如何从存储过程返回值并将其分配给变量,以便在ASP页面上使用

返回值的存储过程称为sp_Auction_PaymentEwayXMLReceive。 输出变量称为ReturnedMsg

我目前的代码是:

Dim Connection
Dim sSQL, sConnString
sConnString="DRIVER={SQL Server};SERVER=XXXX;UID=XXXX; PWD=XXXX;DATABASE=XXXX;"
    sSQL = "sp_Auction_PaymentEwayXMLReceive '"&eWay.ResultEwayTrxnStatus&"','"&eWay.ResultEwayTrxnNumber&"','"&eWay.ResultEwayTrxnReference&"','"&eWay.ResultEwayTrxnOption1&"','"&eWay.ResultEwayTrxnOption2&"','"&eWay.ResultEwayTrxnOption3&"','"&eWay.ResultEwayAuthCode&"','"&eWay.ResultEwayReturnAmount&"','"&eWay.ResultEwayTrxnError&"' "
    Set sConnection = Server.CreateObject("ADODB.Connection")
    Set connection = Server.CreateObject("ADODB.Connection")
    connection.Open(sConnString)
    connection.execute(sSQL)
-编辑- @安多马尔

回复1:我也尝试过这个,但我得到了500个错误


            'set up output parameter
            dim outputParameter
            set outputParameter = _
            cmd.CreateParameter("ReturnedMsg",adVarChar, _
            adParamOutput,40)

            'open conn
            connection.Open(sConnString)

            'append OUTPUT  
            cmd.Parameters.Append outputParameter   

            'exec sql   
            connection.execute(sSQL)

-R

创建连接后,添加一个输出参数:

dim outputParameter
set outputParameter = _
    cmd.CreateParameter("OutputParameterName",adVarChar, _
    adParamOutput,40)
cmd.Parameters.Append outputParameter
运行SP后,可以使用以下值:

Response.Write("<TD>" & _
    cmd.Parameters("OutputParameterName").Value  & "</TD>")

请在提问时设置代码段的格式。这可以用编辑器上方的{}符号完成。请用适当的间距设置查询的格式。这看起来很棒。我还没试过,但看起来不错。我以前没做过这件事。非常感谢您的帮助。我复制了第一段代码,并将OutputParameterName更改为ReturnedMsg,因为这是存储过程中的输出变量,但我看到的只是一个500错误。有什么想法吗?请参阅编辑后的文章…我是否需要更改sSQL行?