Visual Basic - Compactar BD

Life is soft - evento anual de software empresarial
 
Vista:

Compactar BD

Publicado por Mauro (65 intervenciones) el 07/04/2006 00:09:17
Hola a todos, alguien me puede decir como hago para compactar mi base de datos en access, con ado por codigo.
Desde ya muchas gracias.

Mauro
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Compactar BD

Publicado por Cecilia Colalongo (3116 intervenciones) el 07/04/2006 01:22:31
Fijate en: http://support.microsoft.com/support/kb/articles/Q230/5/01.ASP
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Compactar BD

Publicado por gon (46 intervenciones) el 07/04/2006 16:00:31
esto me funciona perfecto
suerte

' Compactar una base de datos con ADO
Dim sDBTmp As String
Dim arc1 As String, arc2 As String
Dim je As JRO.JetEngine
'
On Error GoTo ErrCompactar
'

Cn.Close
Set je = New JRO.JetEngine
'
' Crear un nombre "medio" aleatorio
sDBTmp = "DBT_" & Format$(Minute(Now), "00") & Format$(Second(Now), "00") & ".mdb"
' Asegurarnos de que no existe una base con el nombre temporal
If Len(Dir$(sDBTmp)) Then
Kill sDBTmp
End If
'
' Compactar la base de datos
' je.CompactDatabase "Data Source=" & App.Path & "\datos.dll;" & _
' "Jet OLEDB:Database Password=''", _
' "Data Source=" & App.Path & "\" & sDBTmp & ";Jet OLEDB:Database Password=''"


je.CompactDatabase "Data Source=" & App.Path & "\base.mdb;" & _
"Jet OLEDB:Database Password='pass viejo'", _
"Data Source=" & App.Path & "\" & sDBTmp & ";" & _
"Jet OLEDB:Database Password='pass nuevo'"

' Eliminar la base de datos original
Kill App.Path & "\base.mdb"

'Renombrar la base temporal con el original
arc1 = App.Path & "\" & sDBTmp
arc2 = App.Path & "\base.mdb"
FileCopy arc1, arc2

'Borrar la base temporal
Kill App.Path & "\" & sDBTmp

Exit Sub
ErrCompactar:
' Mostrar el mensaje de error
MsgBox "Error al compactar la base de datos:" & vbCrLf & _
Err.Number & " " & Err.Description, _
vbExclamation, "Error al compactar la base de datos"
Err.Clear
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar