长期潜伏者,第一次海报。
我有一个mysql表通过5.1odbc驱动程序连接到access 2010。我正在尝试更新mysql表,并奇怪地在currentdb的末尾添加dbfailonerror。execute strsql阻止表更新,但不会引发任何错误。我的VBA编辑器设置为在所有错误时中断。例程中的所有错误处理都已被注释以供测试。
如果使用currentdb.execute strsql或docmd.runsql strsql,则表将更新。此外,mysql表还有一个索引。
SQL字符串:

strSQL = "UPDATE clients
SET [DateLastAccessed] = " & lngDateAccessed & ",
[CountAccess] = " & intCountAccessed & "
WHERE [SerialHDD] = '" & strGetHDD & "' ;"

任何帮助都非常感谢。

最佳答案

“在dbFailOnError末尾添加CurrentDb.Execute strSQL可防止表更新,但不会引发任何错误”
如果SetWarnings已关闭,则在没有可见错误的情况下无法更新。在执行update语句之前,检查在立即打开SetWarnings时是否得到不同的结果。

DoCmd.SetWarnings True
CurrentDb.Execute strSQL, dbFailOnError

10-07 23:33