我在調用ADO UPDATE方法的傳統ASP類中有以下子例程。我正在使用ODBC驅動程序5.1使用MySQL數據庫。ASP錯誤「密鑰列信息不足或不正確。」當更新mySQL
如果我所有的子程序我得到以下錯誤:
Microsoft遊標引擎錯誤「80004005」 鍵列信息不足或不正確。更新影響了太多的行。
Public Sub Update(table,id_field,id,fields,values)
Dim yy
Dim strQuery
Dim strFields
Const adOpenDynamic = 2
Const adLockOptimistic = 3
Const adCmdText = 1
strQuery = ""
For yy = LBound(fields) to UBound(fields)
strQuery = strQuery & fields(yy) & ", "
Next
strQuery = Left(strQuery, Len(strQuery) - 2)
strQuery = "select " & strQuery & " from " & table & " where " & id_field & "=" & id
i_objRS.CursorLocation = 3
i_objRS.Open strQuery, i_objDataConn, adOpenDynamic, adLockOptimistic, adCmdText
For yy = 0 To UBound(fields)
i_objRS(fields(yy)) = values(yy)
Next
i_objRS.Update
i_objRS.Close
End Sub
我試圖改變CursorLocation屬性和開放的參數,但仍無法得到它的工作。我正在更新的表格有一個唯一的自動編號,它是主鍵。
如果我使用命令對象,它工作正常。我會暫時堅持這一點。 – 2009-07-29 10:18:28