Přehled programování v architektuře OLE DB
Co je technologie OLE DB a co ji odlišuje od jiných databázových technologií?Technologie OLE DB je vysoce výkonná databázová technologie, založená na modelu COM, vyrobená společností Microsoft.To co odlišuje technologii OLE DB od jiných databázových technologií společnosti Microsoft je její poskytování univerzálního přístupu k datům.
Univerzální přístup k datům
Univerzální přístup k datům umožňuje společný přístup k datům, bez ohledu na formu, ve které je uložen.V typické obchodní situaci je obrovské množství informací uloženo mimo podnikové databáze.Tuto informaci naleznete v systémech souborů (jako je například systém souborů FAT nebo systém souborů NTFS), indexovaně-sekvenčních souborech, osobních databázích (jako je například aplikace Access), tabulkových procesorech (jako je například aplikace Excel), aplikacích projektového plánování (například aplikace Project) a e-mailech (jako je například aplikace Outlook).
Přístup k těmto datům pomocí různých přidružených aplikací představuje hlavní problémové místo v pracovním postupu nebo přinejmenším v zabezpečení.Většina společností se ocitne v této situaci a řeší potíže sloučením informací do databázového systému (DBMS).Avšak takový krok je nákladný, časově náročný a v mnoha případech nepraktický.
Alternativou je vyvinutí řešení univerzálního přístupu k datům.Technologie OLE DB a rozhraní ADO poskytují možnosti univerzálního přístupu k datům.Z těchto dvou je technologie OLE DB výkonnější a je doporučena pro použití s aplikacemi Visual C++.
Univerzální přístup k datům zahrnuje dvě možnosti: první možností je distribuovaný dotaz nebo jednotný přístup k několika (distribuovaným) zdrojům dat, druhou pak schopnost zpřístupnit databázovým aplikacím zdroje dat typu jiného než DBMS.
Distribuovaný dotaz
Schopnost získat přístup k datům jednotně z více (které jsou distribuovány) zdrojů dat.Zdroje dat mohou být stejného typu (například dvě samostatné databáze aplikace Access) nebo různých typů (například databáze serveru SQL Server a databáze aplikace Access).Jednotně znamená, že lze srozumitelně spouštět stejný dotaz na všechny zdroje dat.
Non-DBMS přístup
Schopnost zpřístupnit non-DBMS zdroje dat databázovým aplikacím.Příklady DBMS zdrojů dat zahrnují IMS, DB2, Oracle, SQL Server, Access a Paradox.Příklady non-DBMS zdrojů dat zahrnují informaci v systémech souborů, e-mailech, tabulkových procesorech a nástrojích projektového řízení.
Zvažte scénář, ve kterém potřebuje oddělení prodeje najít všechny e-mailové zprávy, přijaté v periodě jednoho týdne, od zákazníků v určité oblast.Tento dotaz může vyžadovat hledání v souboru e-mailového klienta a hledání v tabulce aplikace Access se zákazníky, k zadání jmen zákazníků.Aplikace Access je DBMS aplikací, ale aplikace Outlook ne.
Technologie OLE DB umožňuje vyvíjet aplikace, které přistupují k různým zdrojům dat, ať už jsou DBMS nebo ne.Technologie OLE DB umožňuje univerzální přístup pomocí rozhraní modelu COM, který podporuje příslušné DBMS funkce pro daný zdroj dat.Model COM snižuje nežádoucí zdvojení služeb a maximalizuje vzájemnou funkční spolupráci nejen mezi zdroji dat, ale také mezi jinými aplikacemi.
Výhody modelu COM
Zde přichází model COM.Technologie OLE DB je sada rozhraní modelu COM.Podle přístup k datům prostřednictvím jednotné sady rozhraní, můžete organizovat databáze do matice spolupracujících součástí.
Na základě specifikace modelu COM definuje technologie OLE DB rozšíření a udržovatelnou sadu rozhraní, které označují a zapouzdřují konzistenci opakovaně použitelných částí funkcí DBMS.Tato rozhraní definují hranice DBMS součástí, jako jsou například řádky kontejnerů, procesorové dotazy a koordinátory transakcí, umožňující jednotný transakční přístup k různorodým informacím zdrojů.
Aplikace technologie OLE DB jsou obvykle napsány jako DLL knihovny, ale jejich implementace modelu COM překonává nevýhody knihoven DLL (například problémy názvů a verzí) s pomocí komponenciovatelného kódu.V technologii OLE DB voláte rozhraní nebo přistupujete k jiným komponentám pomocí jejich globálně jedinečných identifikátorů (GUID).
Nakonec model COM uchovává informace o využití komponenty pomocí počítání odkazů.Při volání metody na rozhraní, je zvýšen počet odkazů; když metoda vrátí hodnotu, je počet odkazů snížen.Pokud se počet rovná nule, je uvolněna ta komponenta, ke které patří metoda.
Viz také
Koncepty
OLE DB – šablony příjemce (C++)
Šablony zprostředkovatele OLE DB (C++)