别人的方法 Public HTcn As ADODB.Connection Public HTrs As New ADODB.RecordsetPublic Function OpenStandHT(HTmdbPath As String) Set HTcn = New ADODB.Connection 'Set HTcn = CurrentProject.Connection HTcn.Provider = "Microsoft.Jet.OLEDB.4.0" HTcn.Open HTmdbPath End Function Public Function CloseStandHT() HTrs.Close Set HTrs = Nothing HTcn.Close Set HTcn = Nothing End Function我用来关闭数据库就出现“对象关闭时,不允许操作” ,是不是HTrs没与数据库联系起来?
用 ADODC 是有点麻烦。试试:ADODC1.Recordset.Close ADODC1.Recordset.ActiveConnection.Close Set ADODC1.Recordset = Nothing Set ADODC1.Recordset.ActiveConnection = Nothing
谁知道你用了多少个 ADODC,都会自动连数据库的。
Set rs = Nothing
cn.Close
Set cn = Nothing此后,实际上有可能要等待操作系统磁盘交换的完成。然后,才可以压缩 Access 数据库。
Adodc1.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=MS Access Database;Initial Catalog=" & App.Path & "XXXXX" Adodc1.RecordSource = "XXXXX"
Public HTcn As ADODB.Connection
Public HTrs As New ADODB.RecordsetPublic Function OpenStandHT(HTmdbPath As String)
Set HTcn = New ADODB.Connection
'Set HTcn = CurrentProject.Connection
HTcn.Provider = "Microsoft.Jet.OLEDB.4.0"
HTcn.Open HTmdbPath
End Function
Public Function CloseStandHT()
HTrs.Close
Set HTrs = Nothing
HTcn.Close
Set HTcn = Nothing
End Function我用来关闭数据库就出现“对象关闭时,不允许操作” ,是不是HTrs没与数据库联系起来?
ADODC1.Recordset.ActiveConnection.Close
Set ADODC1.Recordset = Nothing
Set ADODC1.Recordset.ActiveConnection = Nothing