asp - asp.net - aspcode.it

COMMUNITY - Login
 Username:
 
 Password:
 
Voglio registrarmi!
Password dimenticata?
 Utenti on-line: 0
 Ospiti on-line: 7843
ASPCode.it - Store

  > > Articoli

Compattare un DataBase

Data di pubblicazione: 05/04/2002        Voto della community: 3,08 (Votanti: 4)

Le dimensioni di un database crescono progressivamente durante il suo utilizzo. Per questo può essere molto utile una compattazione del database stesso, in modo tale da migliorarne le prestazioni e risparmiare spazio su disco.

Di seguito è presentata una funzione che effettua la compressione di un database. I parametri che riceve sono 2:
- dbname: è il nome del database
- password: è l'eventuale password con cui è protetto il database.

In questo esempio, viene compattato il database utenti.mdb. Supponiamo che il database non sia protetto da password, per cui il secondo parametro sarà una stringa vuota.

<%
'compatta il database dbname
Function CompactDB(dbname, password)
  Dim dbpath
  dbpath = Server.MapPath(dbname)

  Dim cnfrom, cnto
  cnfrom = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&dbpath
  cnto = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&dbpath&".temp"

  'se il db è protetto da password...
  If password<>"" Then
    cnfrom = cnfrom&";Jet OLEDB:Database Password="&password
    cnto = cnto&";Jet OLEDB:Database Password="&password
  End If

  Dim engine
  Set engine = Server.CreateObject("JRO.JetEngine")
  'compatta il database
  engine.CompactDatabase cnfrom, cnto

  Dim fso
  Set fso = Server.CreateObject("Scripting.FileSystemObject")
  'il db originale viene eliminato
   fso.DeleteFile dbpath
  'il db appena compresso viene rinominato col nome del db originale
  fso.MoveFile dbpath&".temp", dbpath

  Set fso = nothing
  Set engine = nothing
End Function

'chiamo la funzione per la compressione del database
Call CompactDB("utenti.mdb", "")

Response.Write("Il DataBase è stato compattato con successo!")
%>




Utenti connessi: 7843