将 DoCmd.RunSQL 用于 INSERT 和 DELETE 时删除确认
Posted
技术标签:
【中文标题】将 DoCmd.RunSQL 用于 INSERT 和 DELETE 时删除确认【英文标题】:Remove confirmation when using DoCmd.RunSQL for INSERT and DELETE 【发布时间】:2013-05-30 13:42:54 【问题描述】:我正在使用 DoCmd.RunSQL 方法根据用户在表单中执行的操作来插入和删除记录。它工作正常,但在删除或附加记录之前要求确认。如何删除确认。
顺便说一句,BeforeDelConfirm 事件似乎没有与 DoCmd.RunSQL 一起运行。
【问题讨论】:
Application.DisplayAlerts = False
?
谢谢。我认为 Application.DisplayAlerts 仅适用于 Excel。我找到了一个等价物。 DoCmd.SetWarnings。不知道为什么它们在 excel 和 access 中不一致。
【参考方案1】:
而不是使用DoCmd.RunSql
来运行您的 SQL 并担心警报,您可以使用它。
Dim sql as string
Dim dbs as DAO.Database
set dbs = CurrentDb()
sql = "INSERT INTO table(field1) VALUES(1)"
dbs.Execute sql, dbFailOnError
dbs.close
set dbs = nothing
【讨论】:
谢谢。我最终使用了 DoCmd.SetWarnings。反正我学到了一些新东西,因为我不知道你也可以运行这样的 SQL 命令。 关闭SetWarnings
会抑制信息,因此会使故障排除变得困难。 (搜索 SO for ms-access plus SetWarnings)Database.Execute
更好,尤其是明智地包含了 dbFailOnError
选项 Zaider。 +1以上是关于将 DoCmd.RunSQL 用于 INSERT 和 DELETE 时删除确认的主要内容,如果未能解决你的问题,请参考以下文章
docmd.runsql ("从 &strValue& 中删除 *")
MS Access currentdb.excute 的结果与 Docmd.RunSQL 不同