ODBC - Open Database Connectivity

ODBC sind in der Softwareentwicklung weit verbreitet. Sie ermöglichen den Zugriff auf Datenbanken, ohne, dass datenbankspezifische Kenntnisse notwendig sind.
Ein Datenbankentwickler freut sich über den leichten Zugang zur Datenbank mithilfe von ODBC.
© opolja

Was ist ODBC?

Die Abkürzung ODBC steht für Open Database Connectivity. Die OBDC bietet ein Application Programming Interface (API), also eine Programmierschnittstelle, und ermöglicht so den Zugriff von Anwendungen auf Datenbanken.

Die SQL Access Group, welche zu Microsoft gehört, entwickelte die OBDC bereits 1992. Mittlerweile gilt sie als weltweit verbreiteter Standard für den Datenbankzugriff.

ODBC wird in der Datenbankverwaltung bzw. in der Softwareentwicklung eingesetzt. Häufig wird sie von erfahrenen, professionellen Entwicklern bspw. in Software- oder Webagenturen verwendet.

ODBC-Schnittstelle

Eine ODBC-Schnittstelle verbindet eine Vielzahl von Applikationen mit einer bestimmten Datenbank. Die standardisierte, offene Schnittstelle kann in Verbindung mit vielen Drittanbieteranwendungen, wie z.B. Excel, SPSS oder MS Access, genutzt werden. Die ODBC-Schnittstelle ermöglicht dabei den Zugriff auf lokale und externe Datenbanken.

Aufbau von ODBC

Bei einer ODBC lässt sich zwischen vier wesentlichen Bestandteilen differenzieren:

  • Anwendung
  • Treiber
  • Treiber-Manager
  • Datenquelle

Die Datenquelle, oder auch Datenspeicherung, kann entweder eine Datenbank, Excel-Tabelle oder auch Textdatei sein. Die Bit-Tiefe der Daten hängt dabei von der Applikation ab, so werden für eine 64 Bit Applikation auch eine 64 Bit Datenquelle benötigt. Diese kann sich entweder auf dem gleichen Rechner wie die Anwendung befinden oder, über ein Netzwerk erreichbar, in einem externen System gespeichert sein.

Funktionsweise einer ODBC

Eine Open Database Connectivity nutzt SQL als universelle Datenbanksprache. Die SQL-Befehle der Anwendungen werden von der ODBC in die Sprache der Datenbanken umgewandelt. Somit passiert der eigentliche Zugriff nie direkt auf die Datenbank, sondern über die zughörige ODBC-Komponente.

Die ODBC stellt ein offenes API zur Verfügung, um so die SQL-Anfragen und Ergebnisse zu übertragen.

Für den Zugriff auf die unterschiedlichen Datenquellen werden spezielle ODBC Treiber benötigt. Die Zugangsdaten für den Treiber liefert der Data Source Name DSN, um die Verbindung zur Datenbank auf Basis eines bestimmten RDBMS aufzubauen. Der ODBC Treiber interpretiert vorkommende Fehler und liefert im Anschluss Fehlercodes.

Die Anwendung initiiert den Verbindungsaufbau, welcher spezifische Informationen, wie bspw. Passwörter, enthalten kann, mit dem Treiber-Manager. Daraufhin wird über den DSN die Datenquelle benannt.

Java oder C++ gehören beispielsweise zu den objektorientierten Programmiersprachen. Diese werden Klassen zugeordnet, die die Kommunikation per ODBC mit den Datenbanken definieren. Aufgrund dessen werden von Programmierern keine datenbankspezifischen Detailkenntnisse benötigt. Eine Abhängigkeit von einzelnen Datenbanken, bzw. ihrer Datenbanksprache, wird somit durch eine ODBC ausgeschlossen.

ODBC in der Softwareentwicklung

Die Open Database Connectivity erleichtert in der Softwareentwicklung viele Prozesse, wird allerdings vorwiegend von erfahrenen Entwicklern genutzt.

Da eine ODBC die Möglichkeit bietet, dass mehrere Anwendungen auf eine Datenquelle zugreifen können, ist eine einfachere Vernetzung der Anwendungen untereinander möglich, ohne, dass diese sich direkt austauschen müssen.

Der Entwicklungsprozess im Allgemeinen wird außerdem erleichtert, da SQL als Universalsprache angewendet wird. So wird z.B. bei einem Relaunch einer (webbasierten) Datenbank keine, eventuell aufwendige, Einarbeitung in die zuvor verwendete Abfragesprache notwendig, was auch die Migration der Daten vereinfacht. Da die ODBC-Schnittstelle mit SQL bedient werden kann, obwohl ursprünglich eine andere Datenbanksprache verwendet wird, und so die Verbindung zwischen der Software herstellt.

Ein Nachteil dieser Schnittstellen ist allerdings, dass die benötigten Treiber zuvor installiert werden müssen. In dem Fall, dass verschiedene Datenquellen genutzt werden, muss auch auf verschiedene Treiber zurückgegriffen werden. Vor allem für kleinere Unternehmen mit keiner oder sehr kleiner IT-Abteilung gestaltet sich dies sehr zeit- und kostenaufwendig. Daher wenden sich die Unternehmen oftmals an spezialisierte Softwareagenturen, welche mit viel Erfahrung an die Umsetzung herangehen.

Softwareagentur TenMedia in Berlin

TenMedia ist eine dynamische Softwareagentur und hat sich auf die individuelle Datenbankentwicklung spezialisiert. Viele Datenbanksysteme sind längst überholt, die enthaltenen Datensätze jedoch nach wie vor wichtig. Wir setzen ODBC vor allem beim Relaunch von Datenbanken oder deren Optimierung ein - so können wir auf wertvolle Daten zugreifen, ohne uns in veraltete Datenbanksysteme einarbeiten zu müssen und womöglich Risiken bei der Funktionalität oder dem Datenschutz eingehen zu müssen. Durch Individualsoftware können wir zudem eine optimale Kompatibilität mit bereits bestehender Unternehmenssoftware und den dazugehörigen Prozessen garantieren.

Seit 2011 übernehmen wir den Relaunch von Websites, (webbasierten) Datenbanken und auch die Neuentwicklung für Auftraggeber verschiedenster Art – ob KMU, öffentliche Einrichtungen oder Start-ups.

Bei weiteren Fragen oder Anregungen steht unser Team gern telefonisch, per E-Mail oder in einem persönlichen Gespräch in unserem Office zwischen Rosa-Luxemburg-Platz und Alexanderplatz in Berlin zur Verfügung.