Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba DAO记录集:如果我一次又一次地重复使用同一个名称,我是否应该关闭并设置为空?_Vba_Ms Access_Recordset - Fatal编程技术网

Vba DAO记录集:如果我一次又一次地重复使用同一个名称,我是否应该关闭并设置为空?

Vba DAO记录集:如果我一次又一次地重复使用同一个名称,我是否应该关闭并设置为空?,vba,ms-access,recordset,Vba,Ms Access,Recordset,从概念上讲,关于内存泄漏和最佳实践,哪一个更好: Do set mTable = "something" 'do a bunch of stuff mTable.Close Set mTable = nothing Loop 或: 一个比另一个快吗?您忘了选择我的偏好: Do set mTable = "something" 'do a bunch of stuff mTable.Close Loop Set mTable = nothing mTabl

从概念上讲,关于内存泄漏和最佳实践,哪一个更好:

Do
 set mTable = "something"
 'do a bunch of stuff
 mTable.Close
 Set mTable = nothing
Loop
或:


一个比另一个快吗?

您忘了选择我的偏好:

Do
     set mTable = "something"
     'do a bunch of stuff
     mTable.Close
Loop
Set mTable = nothing
mTable.Close
提交事务,在记录集上运行大量添加或编辑操作时,可能会遇到嵌套事务太多的问题(尤其是在处理附件和多值字段时,应尽可能避免)

Set mTable=Nothing
清除对已关闭记录集的引用,并且实际上没有理由在循环中使用它,因为在几毫秒后,您将为其重新分配其他内容


这完全取决于你到底在做什么。正如@Gustav所说,最后一个基本上是好的。但是,在编辑和插入时,我更喜欢我的选项。

最后一个选项完全可以。可能是重复的谢谢Gustav.GSerg-谢谢你的链接。我读了这篇文章,非常有帮助。我将在mTable中编辑记录,所以听起来这可能是一种方法。谢谢你提供的细节。我自学成才,在概念上有很大的差距,这对我帮助很大。
Do
     set mTable = "something"
     'do a bunch of stuff
     mTable.Close
Loop
Set mTable = nothing