<?php
/* Inserisci qui il percorso dove si trova il database */
$path= "";
/* Nome e password del database da compattare */
$olddb="nome.mdb";
$oldpass="vecchia password";
/* Nome provvisorio database compattato */
$newdb="new_db.mdb";
$newpass="nuova password";
/* ConnString verso il database da compattare */
$oldConn="Provider=Microsoft.Jet.OLEDB.4.0;";
$oldConn.="Data Source=".$path.$olddb.";";
$oldConn.="Jet OLEDB:Database Password=$oldpass ;";
/* ConnString verso il nuovo database (compattato) */
$newConn="Provider=Microsoft.Jet.OLEDB.4.0;";
$newConn.="Data Source=".$path.$newdb.";";
$newConn.="Jet OLEDB:Database Password=$newpass ;";
/* Controllo che non esista già un file con il nome provvisorio scelto */
if(file_exists($path.$newdb)){
die("Esiste già un file con il nome
provvisorio che hai scelto") ;
}
/* Istanzio l'oggetto che fornisce il metodo Compact() */
$je=new COM("JRO.JetEngine") or die("Compact fallito");
/* Compatta il database e setta una nuova password */
$je->CompactDatabase($oldConn,$newConn) ;
$je->Release() ;
$je= null ;
/* Elimina il vecchio database */
unlink($olddb);
/* Rinomina il db compattato con il vecchio nome */
rename($newdb,$olddb);
?>
Aggiungi un commento