数据库用的是ACCESS 连接方式用ADO对象
系统建立多个连接打开数据库,连接名称未知,现在需要关闭所有打开的连接.(连接方式用:ADO,不是DAO)请XDJM帮忙一下,谢谢!

解决方案 »

  1.   

    遍历ADO,然后Close时间不多,不方便测试。给个大致的方法给你参考一下:
    '声明一个连接变量,或者一个变体数据类型,以下两选一
    Dim varCon as adodb.connection
    Dim varCon as variant'遍历连接,如果是打开的,则关闭之
    for each varcon in adodb.connections
      if varcon.state=adstateopen then varcon.close
    next
      

  2.   

    改一下
    if varcon.state<>adstateclosed then varcon.close
      

  3.   

    不好办。ADO 没有 WorkSpace 这一层对象。
      

  4.   

    退出应用再打开吧,或者换 DAO。
      

  5.   

    可以在Form_Unload事件中处理。代码如下:
    --------------------------------------------------------------------------------
    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
        Form 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
    --------------------------------------------------------------------------------
      

  6.   

    上面的代码会关闭所有的打开的DAO工作,数据库和记录集并释放这些对象占用的内存空间。