COMPACTAR BANCO DE DADOS
Bom dia Pessoal.
Preciso desenvolver um pequeno projeto apenas para Reparar e Compactar minhas duas bases de dados que são .mdb ...
Alguém sabe como fazer para Reparar e Compactar via código ?
Obrigado ....
Marcelo
Preciso desenvolver um pequeno projeto apenas para Reparar e Compactar minhas duas bases de dados que são .mdb ...
Alguém sabe como fazer para Reparar e Compactar via código ?
Obrigado ....
Marcelo
Depende do engine que você usa. Com ambos, você tem de encerrar todas as conexões á base de dados ANTES de compactar/reparar.
Com DAO, um exemplo poderia ser:
...
DBEngine.CompactDatabase sTR, sTR2, sPD, dbEncrypt, sPD
Kill sTR
Name sTR2 As sTR
...
onde
sTR é o nome/caminho da base de dados á ser compactada
sTR2 é o nome da base para onde a base atual será compactada
sPD é localização da base, seguida pela senha, se houver uma (por exemplo dbLangGeneral;PWD=SENHA )
Com DAO, um exemplo poderia ser:
...
DBEngine.CompactDatabase sTR, sTR2, sPD, dbEncrypt, sPD
Kill sTR
Name sTR2 As sTR
...
onde
sTR é o nome/caminho da base de dados á ser compactada
sTR2 é o nome da base para onde a base atual será compactada
sPD é localização da base, seguida pela senha, se houver uma (por exemplo dbLangGeneral;PWD=SENHA )
Para o caso de querer utilizar o ADO, você terá de referenciar a biblioteca Microsoft Jet and Replication Objects.
Depois disso, fica parecido. Veja:
...
Dim jro As jro.JetEngine
Set jro = New jro.JetEngine
jro.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=X:\BASEEXEMPLO.MDB;Jet OLEDB:Database Password=senha", _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Y:\BASEEXEMPLO2.mdb;Jet OLEDB:Engine Type=4;Jet OLEDB:Database Password=senha"
...
Depois, substituir a base original pela compactada, como no exemplo anterior.
Depois disso, fica parecido. Veja:
...
Dim jro As jro.JetEngine
Set jro = New jro.JetEngine
jro.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=X:\BASEEXEMPLO.MDB;Jet OLEDB:Database Password=senha", _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Y:\BASEEXEMPLO2.mdb;Jet OLEDB:Engine Type=4;Jet OLEDB:Database Password=senha"
...
Depois, substituir a base original pela compactada, como no exemplo anterior.
Tópico encerrado , respostas não são mais permitidas