0
我必須支持經典的asp系統(grrr),它根據proc中的最終選擇順序從存儲過程中返回空值。 我正在設法通過擺動選擇順序來解決這個問題,直到我找到一個適用於每個領域的工作......不幸的是,現在它已決定在不同的機器上以不同的方式工作。經典的asp ado存儲過程根據選擇順序刪除字段
相當基本的asp:
' ORDER ITEMS
sSQL = "ProcName " & Order_ID
Dim iRowCount : iRowCount = 0
set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open Application("admin_ConnectionString")
set rs = objConn.execute(sSQL)
if not rs.eof then
' Just doing this set thing to try and stop stupid ADO dropping fields !!
' The final select in the proc decides whether things will appear or disappear...
set iQtyRequired = rs("QuantityRequired")
do until rs.eof
iQtyOutstanding = iQtyRequired - iQtyFulfilled
SQL擁有的,光標和最後一個公正的處理量的選擇:
SELECT DispatchDate, ProposedDispatchQty, ...
FROM @OrderItems
如果我改變選擇,不同將字段的順序「從ado中消失「 - 它們仍然存在於.net和sql管理工作室中。我無法得到任何一致性,哪一個導致它,似乎很多,我會嘗試20種不同的組合,得到20套不同的空白。
我猜ado會在裏面靜靜地吹起某個地方(可能是日期處理?)。任何人都有什麼好的建議來獲得一致性? (除了在C#重寫它)提前
乾杯 - 巴蒂爾:)
你能澄清:你可以改變PROC返回0,而不是空值?爲什麼不檢查字段是否爲空:if not not isnull(rs(「QuantityRequired」))then ... – 2011-01-21 12:03:16
我認爲你錯過了一點 - 那裏有數據(profile sql - 在mgmt studio中運行)但後來它被丟棄了。 – sparau 2011-01-23 23:16:17