手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>程序设计>VB>列表

用VB实现关闭所有数据库对象

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
如果你在程序中使用了任何数据库对象(DAO, RDO, 或者 ADO), 在退出程序之前,你必须确认已经关闭掉了所有已经打开的记录、数据库和数据工作台(recordsets, databases, and workspaces)。虽然退出程序时这些对象的指针都被自动施放了,但是如果你自己又不能确认是否真正地释放了打开的数据库对象,那么就有可能数据库连接没有马上被释放掉,从而被这些对象所占用的内存就再也不能被操作系统再次分配。

---- 下面有一段放在Form_Unload 事件(或者其他退出模块中)中的一小段代码例子,它演示了关闭所有打开的DAO 工作台、数据库和记录并释放了被这些对象占用的内存。当你退出FORM时,不论在有一个、100个甚至没有数据库连接时都可以使用下面代码。

Private Sub Form_Unload(Cancel As Integer)

' 关闭数据库对象并且释放内存

On Error Resume Next

Dim ws As Workspace
Dim db As Database
Dim rs As Recordset

For Each ws In Workspaces
For Each db In ws.Databases
For Each rs In db.Recordsets
rs.Close
Set rs = Nothing
Next
db.Close
Set db = Nothing
Next
ws.Close
Set ws = Nothing
Next
End Sub

上一篇: 如何使用 ADO 來压缩或修复 Microsoft Access 文件
下一篇: 浅谈Excel 的VB编程

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!