2012-03-07 74 views
0

我有一个具有2个参数的存储过程。  当我在SQL中运行SP时,它按预期返回值。 当我在我的ASP页面(不是asp.net)中调用SP时,它会挂起。 我有另一个SP只需要一个参数,当我从我的ASP页面调用这个时,它按预期工作。 这是我使用调用SP用2个参数的代码: MID =的Request.Form( “MID”) CardNoString =的Request.Form( “FullCardNo”)具有多个参数的存储过程挂起

set connUBC3=Server.CreateObject("ADODB.Connection") 
    connUBC3.Open "UBC" 
    If Err.number <> 0 then 
     TrapError Err.source & ": " & Err.description 
    End If 

    set cmdTranByCardNo = Server.CreateObject("ADODB.Command") 

    With cmdTranByCardNo 
     .ActiveConnection = connUBC3 
     .CommandText = "BlahBlah_Transaction_GetByMerchantIdAndCardNo" 
     .CommandType = adCmdStoredProc 
     .Parameters.Append .CreateParameter ("RETURN_VALUE", adInteger, adParamReturnValue) 
     .Parameters.Append .CreateParameter ("@MerchantID", adVarChar, adParamInput, 20, MID) 
     .Parameters.Append .CreateParameter ("@CardNo", adVarChar, adParamInput, 20, CardNoString) 
     set SearchTranByCardNoRS = .Execute 

     If Err.number <> 0 then 
      TrapError Err.source & ": " & Err.description 
     End If 
    End With 

这是ASP呼叫对于单个参数SP的作品:

set connUBC3=Server.CreateObject("ADODB.Connection") connUBC3.Open "UBC" If Err.number <> 0 then TrapError Err.source & ": " & Err.description End If 
cmdFindTrans2 = "BlahBlah_Transaction_GetLast10ByMerchantId '" & MID & "'" set SearchTranByCardNoRS = connUBC3.Execute(cmdFindTrans2) If Err.number <> 0 then TrapError Err.source & ": " & Err.description End If 

我自己也尝试了多个参数SP没有返回值线。 任何想法

+0

看起来像一个商家服务应用程序:)无论如何,你传递了什么值?我没有看到确切数值的例子。问题可能在于你传递了什么以及SQL如何期望与SP一起。 – RogueSpear00 2012-03-07 15:38:06

+0

我发送给每个参数的数字字符串,当我在sql(相同的数据)中运行它们时,它会返回预期的结果。我有另一个SP完全相同的事情(这意味着它从页面调用时挂起,但在SQL中工作),我有一个存储Proc作为注意到的工作正常。 – 2012-03-07 15:45:05

+0

哪一部分是解决方案?它是'Execute'还是'NULL'? – RogueSpear00 2012-03-08 14:57:36

回答

0

set SearchTranByCardNoRS = Something.Execute没有命令在这里执行。

cmd.Parameters(1) = x1 
cmd.Parameters(2) = x2 
cmd.Parameters(3) = x3 
cmd.Execute 

另外,我想确认你没有传递任何NULLS通过脚本为SQL。这也可能会导致问题。

+0

您应该在问题的评论中提问,以便OP得到通知。 – 2012-03-08 07:07:09

+0

@ShadowWizard - 谢谢 - 仍然是半新的回答问题:) – RogueSpear00 2012-03-08 14:57:11

+0

当然,这样的事情不是微不足道的 - 花了我好几个月的时间。 :-) – 2012-03-08 15:26:23

相关问题