我在2010访问数据库中从本地表中删除*记录时没有问题,但是当我遍历我的列表并点击链接表(本地数据库,这是一个设置)时,它失败了: 运行时错误' 3131':FROM子句中的语法错误。代码:
If sanityCheck2 = vbYes Then
DoCmd.SetWarnings False
'list the tables to purge here
dalist = "tblLocal1 tblRemote-2 tblRemote-3"
darray = Split(dalist, " ")
For i = LBound(darray) To UBound(darray)
DoCmd.OpenTable darray(i)
DoCmd.RunSQL squirrel
Next
DoCmd.SetWarnings True
代码在tblLocal1上运行正常,而不是在任何遥控器上。
我可以打开数据表中的表格并删除记录没有问题,只是不通过这里。
答案 0 :(得分:4)
我敢打赌,这会阻碍你围绕其中包含-
的表名构建的SQL。除非用方括号包装表名,否则SQL会将DELETE * FROM tblRemote-2 WHERE ...
视为DELETE * FROM tblRemote - 2 WHERE ...
(非感性减法)。将其更改为DELETE * FROM [tblRemote-2] WHERE ...
,您应该没问题。