标题:请问怎么关闭数据库连接
取消只看楼主
ictest
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:325
专家分:114
注 册:2010-2-17
结帖率:69.81%
已结贴  问题点数:15 回复次数:2 
请问怎么关闭数据库连接
程序代码:
        Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path + "\UID.mdb;Persist Security Info=False"
        Adodc1.RecordSource = "select * from UID"
        Adodc1.Refresh
        Set DataGrid1.DataSource = Adodc1
        DataGrid1.Columns(0).Width = 1500
        DataGrid1.Columns(1).Width = 2500
        Label2.Caption = "数据行数为  " & Adodc1.Recordset.RecordCount & ""

以上语句运行正常,数据在DataGrid1中显示正常。

在运行完“Adodc1.Refresh”这一句时,会出现UID.ldb文件(或者如果没有“Adodc1.Refresh”这一句,运行完Set DataGrid1.DataSource = Adodc1时,也会出现UID.ldb文件),这时对该数据库进行复制或者删除时,就会出现《实时错误‘70’,拒绝的权限》。

请问在以上语句的最后面添加什么语句可以关闭与UID.mdb的连接,使UID.ldb文件消失,使UID.mdb可以被执行复制或者删除。
搜索更多相关主题的帖子: 出现 mdb 运行 语句 关闭 
2023-05-11 14:29
ictest
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:325
专家分:114
注 册:2010-2-17
得分:0 
以下是引用风吹过b在2023-5-11 19:17:44的发言:

Adodc1 没有 Close方法

百度了一下,给的方案是
先关闭 表
 Adodc1.Recordset.Close
再清掉查询命令
 Adodc1.RecordSource = ""
最后再清掉连接字串
 Adodc1.ConnectionString = ""

未测试,不知道可行不可行。
网上也说不知道 是否真正的关闭了。


前辈的方法我试了一下,UID.ldb文件还是存在,还是不能复制与删除,说明还是没有断开连接

想到一个笨方法并且尝试了一下,再建立一个空的MDB数据库,引用完UID.mdb后,再用Adodc1引用空数据库,转移一下目标,惊喜的是,UID.ldb文件消失,可以对UID.MDB文件进行复制与删除了。

以上的方法确实很笨,我想也不会是正确的做法,抛砖引玉吧,看看前辈们还有什么办法。
2023-05-11 22:39
ictest
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:325
专家分:114
注 册:2010-2-17
得分:0 
以下是引用吹水佬在2023-5-11 19:57:04的发言:

试试用Release看能否断开关闭


前辈说的Release是怎么使用的呢?
2023-05-11 22:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-512169-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.050335 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved