I'm using 3.4.07. When I moved to a new server I got this error:
quote:
Microsoft JET Database Engine error '80004005'
Operation must use an updateable query.
/forum/inc_func_common.asp, line 596
I looked up the lines and it's the last line of this function:
function UpdateLastHereDate(fTime,UserName)
UserIPAddress = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
if UserIPAddress = "" or left(UserIPAddress, 7) = "unknown" then
UserIPAddress = Request.ServerVariables("REMOTE_ADDR")
elseif InStr(UserIPAddress, ",") > 0 then
UserIPAddress = Left(UserIPAddress, InStr(UserIPAddress, ",")-1)
elseif InStr(UserIPAddress, ";") > 0 then
UserIPAddress = Left(UserIPAddress, InStr(UserIPAddress, ";")-1)
end if
if InStr(UserIPAddress, ":") > 0 then
UserIPAddress = Left(UserIPAddress, InStr(UserIPAddress, ":")-1)
end if
if Not isValidForumDateString(fTime) then
fTime = DateToStr(strForumTimeAdjust)
end if
'## Forum_SQL - Do DB Update
strSql = "UPDATE " & strMemberTablePrefix & "MEMBERS "
strSql = strSql & " SET M_LASTHEREDATE = '" & fTime & "'"
strSql = strSql & ", M_LAST_IP = '" & UserIPAddress & "'"
strSql = strSql & " WHERE " & strDBNTSQLName & " = '" & ChkString(UserName, "SQLString") & "' "
my_conn.Execute (strSql),,adCmdText + adExecuteNoRecords
end function
After some testing I figured out that the solution was that I didn't have the proper file rights on the new machine. The solution was to add Write to Users (DEDIC038\Users). Your user might be called something different though.
Just wanted to post this since it might help someone like me who forgot to check this.