2012-03-07 88 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

相關問題