Unterschied zwischen ODBC und OLEDB

Unterschied zwischen ODBC und OLEDB

ODBC gegen OLEDB

In der Regel werden Softwareanwendungen in einer bestimmten Programmiersprache geschrieben (wie Java, C#usw.), während Datenbanken Abfragen in einer anderen datenbankspezifischen Sprache akzeptieren (z. B. SQL). Wenn eine Softwareanwendung in einer Datenbank auf Daten zugreifen muss. Andernfalls müssen Anwendungsprogrammierer Datenbankspezifische Sprachen in ihre Anwendungen lernen und einbeziehen. ODBC (Open Database Connectivity) und OLEDB (Objektverknüpfung und Einbettung, Datenbank) sind zwei Schnittstellen, die dieses spezifische Problem lösen. ODBC ist eine unabhängige Schnittstelle für Plattform-, Sprach- und Betriebssysteme, die für diesen Zweck verwendet werden kann. OLEDB ist der Nachfolger von ODBC.

Was ist ODBC?

ODBC ist eine Schnittstelle zum Zugriff auf Datenbankverwaltungssysteme (DBMS). ODBC wurde 1992 von der SQL Access Group entwickelt. Es gab kein Standardmedium, das zwischen einer Datenbank und einer Anwendung kommuniziert hatte. Es hängt nicht von einer bestimmten Programmiersprache, einem Datenbanksystem oder einem Betriebssystem ab. Programmierer können die ODBC -Schnittstelle verwenden, um Anwendungen zu schreiben, mit denen Daten aus jeder Datenbank abfragen können, unabhängig von der Umgebung, auf der sie ausgeführt werden.

Da der ODBC -Treiber als Übersetzer zwischen der Anwendung und der Datenbank fungiert, kann ODBC die Sprache und die Unabhängigkeit der Plattform erreichen. Dies bedeutet, dass die Anwendung von der Belastung gelindert wird, die datenbankspezifische Sprache zu kennen. Stattdessen wird es die ODBS -Syntax nur kennen und verwenden, und der Treiber übersetzt die Abfrage in die Datenbank in einer Sprache, die sie verstehen kann. Dann werden die Ergebnisse in einem Format zurückgegeben, das von der Anwendung verstanden werden kann. Die ODBC -Software -API kann sowohl mit relationalen als auch mit nicht relationalen Datenbanksystemen verwendet werden. Ein weiterer wichtiger Vorteil von ODBC als universelle Middleware zwischen einer Anwendung und einer Datenbank besteht darin, dass die Software jedes Mal, wenn sich die Datenbankspezifikation ändert, nicht aktualisiert werden muss. Nur ein Update für den ODBC -Treiber wäre ausreichend.

Was ist OLEDB?

OLEDB ist eine von Microsoft entwickelte Daten -API. Es ermöglicht den Zugriff auf Daten aus einer großen Auswahl an Datenquellen. Es wird mit Microsofts COM (Komponentenobjektmodus) implementiert. OLEDB wird als Nachfolger von ODBC angesehen und kann Datenquellen in einem viel höheren Niveau im Vergleich zu ODBC bewältigen. Im Wesentlichen erweitert OLEDB die ODBC-Funktionen auf nicht-relationale Datenbanken (e.G. Objektdatenbanken und Tabellenkalkulationen). Das heißt, OLEDB kann mit Datenbanken verwendet werden, die SQL nicht verwenden. OLEDB wurde als Teil der Microsoft -Datenzugriffskomponenten (MDAC) entwickelt.

Was ist der Unterschied zwischen ODBC und OLEDB?

Wenn der Programmierer mit COM nicht vertraut ist, ist ODBC die bessere Option. ODBC ist jedoch nur für relationale Datenbanken gut, während OLEDB sowohl für relationale als auch für nicht-relationale Datenbanken geeignet ist. Wenn die Datenbank OLE nicht unterstützt (nicht nur Umgebungen), ist ODBC die beste Wahl. Wenn die Umgebung nicht-SQL ist, müssen Sie OLEDB verwenden (da ODBC nur mit SQL funktioniert). Wenn interoperable Datenbankkomponenten erforderlich sind, muss OLEDB anstelle von ODBC verwendet werden. Für 16-Bit-Daten zum Zugriff auf ODBC ist jedoch die einzige Option (OLEDB unterstützt nicht 16-Bit). Schließlich ist OLEDB die beste Wahl, um eine Verbindung zu mehreren Datenbanken gleichzeitig herzustellen (ODBC kann gleichzeitig eine Verbindung zu einer Datenbank herstellen).