加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – DoCmd.SetWarnings和CurrentDB.Execute有什么区别?

发布时间:2020-12-12 07:49:03 所属栏目:MsSql教程 来源:网络整理
导读:在对 this answer的评论中,Remou写道 CurrentDB.Execute“insert sql here” 比以前好 DoCmd.SetWarnings = 0 DoCmd.RunSQL“insert sql here” 由于Access产生的内置警告.我想了解这个区别. 如果他们都掩盖错误,为什么第一个比第二个更好?这里有最好的做法
在对 this answer的评论中,Remou写道

CurrentDB.Execute“insert sql here”

比以前好

DoCmd.SetWarnings = 0
DoCmd.RunSQL“insert sql here”

由于Access产生的内置警告.我想了解这个区别.

如果他们都掩盖错误,为什么第一个比第二个更好?这里有最好的做法吗?

解决方法

他们不会同时掩盖错误. DoCmd.SetWarnings屏蔽错误,系统范围内,不限于您正在使用的单个应用程序. DoCmd.SetWarnings False没有相应的DoCmd.SetWarnings True将意味着操作查询将在PC上的任何Access应用程序中没有任何提示运行.

执行会抛出警告,您需要的警告,例如查询执行失败,但不会提供您可能不需要的警告,例如“您确定要运行此查询”.

Access MVP的Allen Browne说,他并没有使用Set Warnings.

除此之外,我通常会建议使用CurrentDB的一个实例,因为这将允许您返回记录计数,除此之外:

Set db = CurrentDB
db.Execute sSQL,dbFailOnError

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读