如何从vba中的链接表中删除记录

时间:2014-09-29 15:10:08

标签: sql vba ms-access ms-access-2010

我在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上运行正常,而不是在任何遥控器上。

我可以打开数据表中的表格并删除记录没有问题,只是不通过这里。

1 个答案:

答案 0 :(得分:4)

我敢打赌,这会阻碍你围绕其中包含-的表名构建的SQL。除非用方括号包装表名,否则SQL会将DELETE * FROM tblRemote-2 WHERE ...视为DELETE * FROM tblRemote - 2 WHERE ...(非感性减法)。将其更改为DELETE * FROM [tblRemote-2] WHERE ...,您应该没问题。