请问用VB怎编写备份ACESS数据库啊,如果是用COPY的话,那怎样还原.
最重要的是独占资源.要关了数据库才能COPY请问有什么办法把它不关数据库的情况下备份呢!如果没有,那就教我还原数据库好了!

解决方案 »

  1.   

    那如果我打开了数据库,那数据库COPY是不行的!因为它还在占用.我只能断开数据库才行!你的想法我也用过!但独占资源方式可以教下吗
      

  2.   

    在COPY之前关闭数据库,(关闭数据库文件而已)COPY完后在打开继续用.想还原就COPY回来就行了,
      

  3.   

    那请问高手,你的关闭数据库的代码是怎写的!我就要ACCESS的关闭,和打开代码!
      

  4.   

    数据库导出:(同时压缩数据库)
    Private Sub export(no As String)
        On Error GoTo err2
        
        Dim JR As JRO.JetEngine
        Set JR = New JRO.JetEngine
        conH.Close
        JR.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.path & "\Hletter\hletter.mdb" & ";Persist Security Info=False;" & _
            "Jet OLEDB:Database Password=@qitong&", "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & no & _
            ";Jet OLEDB:Database Password=@asd123&"
        Set JR = Nothing
        conH.Open
        MsgBox "导出完成!", vbOKOnly, "提示"
        Exit Suberr2:
        MsgBox Err.Description & Err.Number, vbCritical, "提示"所有数据库导出都是要关闭CON,完毕后再打开的。
      

  5.   

    这种导入(还原),直接覆盖原来的数据库文件,是最简单的方法。
    On Error GoTo err1
                msgstr = MsgBox("导入后,将清空本地数据库,请退出系统重新进入,确定导入吗?", vbQuestion + vbYesNo, "提示")
                If msgstr = vbYes Then
                    cd4.DialogTitle = "选择要导入的数据库"
                    cd4.InitDir = App.Path & " \export\"
                    cd4.CancelError = True
                    cd4.ShowOpen
                                    con.Close
                    closeif = True                FileCopy cd4.FileName, App.Path & "\data\input.mdb"
                    MsgBox "导入完成!", vbOKOnly, "提示"
                    Unload Me
                End If