无法让我的SQL删除表中的所有记录

时间:2015-05-13 12:44:10

标签: sql ms-access

我很擅长使用VBA,但我需要做的只是删除表格中的所有记录。

我首先创建了一个模块,其中包含以下代码:

Function DeleteRecords()

DoCmd.RunSQL "DELETE * FROM [7 FUF]"

End Function

然后我创建一个具有一个命令RunCode的宏。 传递给此命令的函数名称为DeleteRecords()。当我开始输入函数名称部分时,它会建议DeleteRecords,所以我确信它会看到函数。

运行宏时,我收到错误

  

您输入的表达式具有Microsoft Access的函数名称   找不到

任何想法我做错了什么?

2 个答案:

答案 0 :(得分:2)

实际上问题不在于功能。我相信您的module和您的function具有相同的名称,因此存在冲突。如果有,请确保将module的名称更改为其他内容:DeleteRecordsMod。
这是一个众所周知的常见问题。还要确保该功能可公开访问。
在您的代码中,您并不真正需要*删除所有内容

DoCmd.RunSQL "DELETE FROM [7 FUF]"

答案 1 :(得分:1)

您可能还想考虑完全绕过宏,并执行以下操作:

CurrentDB.Execute“DELETE * FROM [table]”

或者

创建DELETE查询并将其存储在DB中,然后执行DoCmd.OpenQuery