Compattazione dei Database di Microsoft Access tramite ADO

Traduzione articoli Traduzione articoli
Identificativo articolo: 230501
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

Sebbene la specifica di ADO non fornisce gli oggetti per compattare i database di Microsoft Access, questa funzionalitÓ pu˛ essere ottenuta utilizzando l'estensione ADO: Provider Microsoft OLE DB per Jet e Replication Objects (JRO). Questa funzionalitÓ Ŕ stata implementata per la prima volta nel Provider OLE DB JET versione 4.0 (msjetoledb40. dll) e versione JRO 2.1 (Msjro. dll). Questi file DLL sono disponibili dopo l'installazione di MDAC 2.1. ╚ possibile scaricare la versione pi¨ recente di MDAC dal seguente sito Web:
Sito Web di accesso ai dati universale

Informazioni

Per compattare un database Access utilizzando ADO, MDAC 2.1 o successiva deve essere installato correttamente nel computer. Di seguito sono i passaggi principali per compattare un database di Microsoft Access utilizzando Visual Basic e Visual C++:

Visual Basic: La compattazione di un Database di Access tramite ADO

  1. Nell'IDE di Visual Basic, dal menu progetti , fare clic su riferimenti.
  2. Aggiungere Microsoft Jet e la libreria di replica degli oggetti x. x, dove (x. x Ŕ maggiore o uguale a 2,1).
  3. Per Visual Basic, sostituendo i percorsi di database di origine e destinazione dei dati, se necessario, aggiungere le seguenti righe di codice:
    Dim jro As jro.JetEngine
    Set jro = New jro.JetEngine
    jro.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\nwind2.mdb;Jet OLEDB:Database Password=test", _ 
    "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\abbc2.mdb;Jet OLEDB:Engine Type=4;Jet OLEDB:Database Password=test"
    					
Nota: In DAO 3.60, il metodo RepairDatabase non Ŕ pi¨ disponibile. Il codice sopra riportato viene illustrato l'utilizzo del metodo CompactDatabase. Questo metodo sostituisce il metodo DAO 3.5 RepairDatabase.

Visual C++: La compattazione di un Database di Access tramite ADO

  1. Oltre a # Import, Msado15. dll (MDAC2.1), aggiungere la seguente istruzione # import per generare le classi wrapper per gli oggetti JRO alle classi cpp (in alternativa, Ŕ possibile generare le classi wrapper in modo pi¨ efficiente utilizzando gli attributi no_implementation e implementation_only dell'istruzione preprocessore # Import):
    #import "C:\PROGRAM FILES\COMMON FILES\System\ado\MSJRO.DLL" no_namespace 
    					
  2. Aggiungere il seguente (specificando i proprio i percorsi dei database di origine e destinazione) al file cpp in cui si desidera compattare il database:
    ...
    try
    {
       IJetEnginePtr jet(__uuidof(JetEngine));
      jet->CompactDatabase( "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\\nwind2.mdb;Jet OLEDB:Database Password=test", 
    "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\\abbc.mdb;" \ 
    "Jet OLEDB:Engine Type=4;Jet OLEDB:Database Password=test");
    }
    catch(_com_error &e) 
    {       
       ::MessageBox(NULL, (LPCTSTR)e.Description( ), "", MB_OK) ;    
    }
    					
Nota: Il tipo di Jet OLEDB:Engine = 4 Ŕ disponibile solo per i file MDB in formato Jet 3. x. Se questo valore viene omesso, il database viene aggiornato automaticamente alla versione 4.0 (tipo OLEDB:Engine Jet = 5). Vedere la tabella riportata di seguito per i valori appropriati per Jet OLEDB:Engine tipo:
Riduci questa tabellaEspandi questa tabella
Tipo di OLEDB:Engine di JetI file MDB in formato x. x di Jet
1JET10
2JET11
3JET2X
4JET3X
5JET4X

Riferimenti

Per ulteriori informazioni, vedere il seguente articolo della Microsoft Knowledge Base:
230496 Compressione del database Microsoft Access tramite OLE DB

ProprietÓ

Identificativo articolo: 230501 - Ultima modifica: mercoledý 16 maggio 2012 - Revisione: 1.0
Chiavi:á
kbhowto kbjet kbprovider kbmt KB230501 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 230501
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.
Dichiarazione di non responsabilitÓ per articoli della Microsoft Knowledge Base su prodotti non pi¨ supportati
Questo articolo Ŕ stato scritto sui prodotti per cui Microsoft non offre pi¨ supporto. L?articolo, quindi, viene offerto ?cosý come Ŕ? e non verrÓ pi¨ aggiornato.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com