2012-04-11 2 views
1

Ich habe mich gefragt, welche Vorteile die Verwendung eines ODBC-Treibers für die Verbindung mit einem MySQL-Server bietet. Welchen Vorteil hat das, wenn Sie direkt über TCP mit dem Server verbinden und Ihre SQL-Befehle direkt abfeuern?Was ist der Zweck eines ODBC-Treibers beim Herstellen einer Verbindung zu einem MySQL-Server?

Ich arbeite mit einer in labVIEW geschriebenen Codebasis, die auf eine UDL-Datei verweist, die auf eine Datenquelle und den zugehörigen ODBC-Treiber verweist, um die Verbindung zum Server zu verwalten. Ich bin noch nicht davon überzeugt, dass es notwendig ist. Ich kann den Vorteil der Verwendung eines Treibers erkennen, wenn Sie eine Verbindung zu Microsoft Access oder Excel herstellen, aber wenn Ihr Empfänger ein SQL-Server eines bestimmten Typs ist, warum benötigen Sie einen Mittelsmann, der Ihre SQL-Befehle verarbeitet?

Antwort

1

Ich habe den ODBC-Treiber 3.51 seit einiger Zeit für die Verbindung mit MySQL Community Server 5.1 verwendet. Mit dem ODBC-Treiber können Sie (auf einem Windows-Computer) Ihre MySQL-Verbindung zur Liste der ODBC-Datenquellen hinzufügen. Jetzt können Sie diese Datenquelle in vielen kompatiblen Anwendungen referenzieren. Ich konnte diese ODBC-Verbindung in VB.Net-Anwendungen sowie proprietäre Anwendungen für den Druck und andere Funktionen mit ODBC-Funktionalität verwenden.

Ich würde sagen, dass ich beim Programmieren von Web- oder Python-Anwendungen immer die eingebauten MySQL-Pakete verwende, aber wenn Sie auf Ihre Daten über VB.Net oder eine andere proprietäre Anwendung (wie eine eigenständige Windows-App) zugreifen müssen Sie müssen eine ODBC-Datenquelle einrichten, um auf Ihre Datenbank zugreifen zu können. Mit ODBC kann Windows leicht auf MySQL zugreifen. Ohne Windows glaube ich nicht, dass du es brauchst.

+0

Es ist sehr sinnvoll, die Datenquelle zwischen verschiedenen Anwendungen auf demselben Computer mit getrennten Verbindungsanmeldeinformationen zu teilen. –

+0

Richtig guter Punkt, Sie richten es einmal und können dann die Verbindung über viele Anwendungen hinweg verwenden. –

1

Warum ODBC und nicht JDBC? Bei der Verwendung von JDBC kommen einige Gründe für die Nützlichkeit in Betracht:

  • Standard API, um auf die Ergebnisse einer Abfrage zuzugreifen. Um über die Ergebnisse zu iterieren und die tatsächlichen Werte mit dem entsprechenden Typ zu erhalten.
  • Sie müssen nicht wissen, wie das Protokoll funktioniert, um eine Verbindung zum Server herzustellen. Verwenden Sie einfach den Host, Benutzer, Passwort, senden Sie die SQL und durchlaufen Sie das Ergebnis.
  • Zusammenfassung der Verbindung zur Datenbank. Das Ändern der Datenbank sollte einfacher sein.
  • Standardmethode zum Festschreiben und Rollback für transaktionsbasierte Änderungen.
  • Meiner Erfahrung nach ist JDBC sehr ausführlich. Sie müssen viele Zeilen schreiben, um einfache Dinge zu erreichen. Ich habe gefunden, dass der Spring JDBCTemplate Wrapper eine extrem einfach zu verwendende Alternative für einfache Sachen ist.

    +0

    Danke. Die Verbindungsabstraktion ist neben der Standard-API für den Zugriff auf die Abfrageergebnisse sehr sinnvoll. –