View Single Post
Old 25-04-2002, 00:05   #3
Magnum2000
Senior Member
 
L'Avatar di Magnum2000
 
Iscritto dal: Mar 2001
Messaggi: 352
Quote:
Originariamente inviato da tas
[b]Non serve un controllo.

Se usi la libreria DAO basta scrivere così:

DAO.CompactDatabase(source, destination)

------

Se usi ADO, invece, devi caricare anche la libreria JRO (Microsoft Jet and Replicator object). Questo è un sample trovato su MSDN, che in più cripta il database:

Function EncryptDb(strSourceDB As String, _
strDestDB As String) As String
Dim jetEngine As JRO.JetEngine
Dim strSourceConnect As String
Dim strDestConnect As String

' Build connection strings for SourceConnection and
' DestConnection arguments.
strSourceConnect = "Data Source=" & strSourceDB
strDestConnect = "Data Source=" & strDestDB & ";" & _
"Jet OLEDB:Encrypt Database=True"

Set jetEngine = New JRO.JetEngine

' Compact and encrypt the database specified by strSourceDB
' to the name and path specified by strDestDB.
jetEngine.CompactDatabase strSourceConnect, strDestConnect

Set jetEngine = Nothing
End Function


Per fare solo la compattazione, basta modificare opportunamente la stringa di connessione.
Moooolto interessante!
Ma perchè ci sono una stringa di partenza ed una di destinazione?
Se ho un file chiamato "db.mdb" e voglio compattarlo, strSourceDB sarà il path del programma con il file del database e strDestDB cos'è?
__________________
"L'uomo che ha Fede è fortunato. Chi non ha Fede è una persona cui manca qualcosa nel profondo della sua esistenza. La Fede è speranza. L'uomo che abbandona questa speranza non è un uomo, è un disperato" [A. Zichichi]
Magnum2000 è offline   Rispondi citando il messaggio o parte di esso