Komprimace databáze aplikace Microsoft Access pomocí objektů ADO

Překlady článku Překlady článku
ID článku: 230501
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Ačkoli ADO specifikace neobsahuje objekty ke kompresi databází aplikace Microsoft Access, tato možnost může být dosaženo pomocí rozšíření ADO: Microsoft Jet OLE DB Provider a replikaci objektů JRO. Tato funkce byla implementována poprvé JET OLE DB Provider verze 4.0 (Msjetoledb40.dll) a objekty JRO verze 2.1 (Msjro.dll). Tyto soubory DLL jsou k dispozici po instalaci součásti MDAC verze 2.1. Nejnovější verzi součástí MDAC můžete stáhnout z následujícího webu:
Universal Data Access webového serveru

Další informace

Komprimovat databázi pomocí objektů ADO MDAC 2.1 nebo vyšší musí být správně nainstalován v počítači. Zde jsou hlavní kroky zkomprimovat databázi aplikace Microsoft Access pomocí jazyka Visual Basic a Visual C++:

Visual Basic: Komprimaci databáze aplikace Access pomocí objektů ADO

  1. V integrovaném vývojovém prostředí jazyka Visual Basic, v nabídce projektů klepněte na odkazy.
  2. Přidat databázový stroj Microsoft Jet a replikační objekty X.X knihovny, kde (X.X je větší než nebo rovno 2.1).
  3. Přidejte následující řádky kódu jazyka Visual Basic, v případě potřeby nahrazení dat zdrojové a cílové cesty databáze:
    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"
    					
Poznámka: V DAO 3.60 metody RepairDatabase již není k dispozici. Výše uvedený kód ukazuje použití metody CompactDatabase. Tato metoda nahradí metodu DAO 3.5 RepairDatabase.

Visual C++: Komprimaci databáze aplikace Access pomocí objektů ADO

  1. Kromě #import, Msado15.dll (MDAC2.1), přidejte tento příkaz #import na vaší třídy cpp generovat tříd obálky pro objekty JRO (případně můžete generovat tříd obálky efektivněji pomocí atributy no_implementation a implementation_only #import pre-processor výkazu):
    #import "C:\PROGRAM FILES\COMMON FILES\System\ado\MSJRO.DLL" no_namespace 
    					
  2. Přidejte následující (zadání vlastní zdrojová a cílová databáze cest) cpp souboru, kde chcete komprimovat databáze:
    ...
    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) ;    
    }
    					
Poznámka: Typ databázového stroje Jet OLEDB:Engine = 4 je pouze pro soubory ve formátu MDB Jet 3.x. Pokud je tato hodnota vynecháno, databáze automaticky inovovány na verzi 4.0 (typ Jet OLEDB:Engine = 5). Typ databázového stroje Jet OLEDB:Engine naleznete v příslušné hodnoty v následující tabulce:
Zmenšit tuto tabulkuRozšířit tuto tabulku
Typ databázového stroje Jet OLEDB:EngineJet x.x soubory ve formátu MDB
1JET10
2JET11
3JET2X
4JET3X
5JET4X

Odkazy

Další informace naleznete v následujících článek znalostní báze Microsoft Knowledge Base:
230496 Komprimaci databáze aplikace Microsoft Access pomocí OLE DB

Vlastnosti

ID článku: 230501 - Poslední aktualizace: 16. května 2012 - Revize: 1.0
Klíčová slova: 
kbhowto kbjet kbprovider kbmt KB230501 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:230501
Právní omezení pro obsah znalostní báze týkající se produktů, jejichž podpora byla ukončena
Tento článek byl napsán o produktech, pro které společnost Microsoft již neposkytuje nadále podporu. Článek je tedy nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.

Dejte nám zpětnou vazbu

 

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