Pregunta: | 31802 - COMPACTAR BD ACCES 2000 CON TECNOLOGIA ADO |
Autor: | Omar Andres Vera Olarte |
No encuentro la forma de compactar y reparar una base de datos acces 2000 desde visual basic 6.0 y conectada con tecnologia ADO.
En Dao se como hacerlo pero con ADO no Gracias por sus respuestas |
Respuesta: | Vladimir Blaskovic |
' Nota WS_PATH es una variable pública que contiene
' la ruta de la base ' A tú proyecto debes agregar una referencia a : ' Microsoft Jet And Replication objects 2.X Library Private Sub mnuCompacta_Click() Dim Ws_basenew As String Dim Je As New JRO.JetEngine On Error GoTo ErrorHandler: ' If MsgBox("Compacta Base de Datos ?", 1 + vbQuestion, "La Compactación puede tomar varios minutos!!!") <> vbOK Then Exit Sub End If ' Screen.MousePointer = vbArrowHourglass ' ' Obtengo la Base original ' Ws_basenew = WS_PATH & "\Pdp.Mdb" ' ' ' Se verifica que no exista un archivo con el nombre de la base de datos compactada. If Dir(WS_PATH & "\NewPdp.Mdb") <> "" Then Kill WS_PATH & "\NewPdp.Mdb" End If ' ' Se Compacta la base de datos Je.CompactDatabase "Data Source=" & Ws_basenew & ";", _ "Data Source=" & WS_PATH & "\NewPdp.Mdb;" ' Se elimina la base de datos original Kill Ws_basenew ' Se Restablece el nombre original de la Base Name WS_PATH & "\NewPdp.Mdb" As Ws_basenew ' ' Screen.MousePointer = vbDefault MsgBox "Compactación exitosa...", vbInformation Exit Sub ErrorHandler: MsgBox Error$(Err.Number), vbCritical Screen.MousePointer = vbDefault Exit Sub End Sub |