Advanced  Services Verbindung über die ODBC-Schnittstelle Back Next Up Home

ODBC

ODBC (open database connectivity) ist eine standardisierte Schnittstelle, die ein Betriebssystem zum Zugriff auf Datenbanken bereitstellen kann. Von ODBC aus betrachtet schauen dann alle Datenbanken (ziemlich) gleich aus. Für den Zugriff über ODBC muß eine Datenbank einen ODBC-Treiber anbieten und dieser Treiber muß beim Betriebssystem registriert werden. ODBC hat also zunächst noch nichts mit Java zu tun. Da die ODBC-Treiber von der jeweiligen Datenbankfirma zur Verfügung gestellt werden und es keine Verpflichtung gibt, welche Features ein ODBC-Treiber im einzelnen unterstützen soll, ist etwa Oracle-ODBC nicht gleich MS-Access-ODBC.


Installation von MySQL

MySQL ist für den privaten Gebrauch kostenlos. Die Datenbank selbst erhält man unter der Adresse

http://www.mysql.com/downloads

Hier wählt man links den Punkt "MySQL Community Server" aus und sucht sich die aktuelle Version aus. Die Installation ist mittlerweile problemlos.


Download des MySQL-ODBC-Treibers

Den MySQL-ODBC-Treiber findet man wie oben unter

http://www.mysql.com/downloads

Jetzt wählt man links den Punkt "Connectors" aus und dann "Connector/ODBC". Sodann sucht man sich die neueste Version heraus und lädt diese herunter. Beim Schreiben dieser Anleitung ist dies die Version mit der Nummer "5.2.4".


Installation des MySQL-ODBC-Treibers

mysql-odbc-1.jpg

mysql-odbc-2.jpg

mysql-odbc-3.jpg

mysql-odbc-4.jpg

mysql-odbc-5.jpg


Konfigurierung des MySQL-ODBC-Treibers

In Windows XP geht man über Start, Einstellungen zum Fenster "Systemsteuerung" und wählt dann "Verwaltung" und weiter "Datenquellen(ODBC)". Hier wählt man dann die Karteikarte System-DNS.


mysql-odbc-config-1.jpg

Hier wählt man Hinzufügen und sucht im neuen Dialog nach dem MySQL-Treiber.

mysql-odbc-config-2.jpg

Der Button "Fertig stellen" führt auf einen weiteren Dialog. Hier trägt man die Daten ein.

mysql-odbc-config-3.jpg

Mit dem Test-Button kann man feststellen, ob man die richtigen Angaben gemacht hat.

mysql-odbc-config-4.jpg

Nun sieht man den neuen Eintrag im Ausgangsdialog

mysql-odbc-config-5.jpg


Mit einem C#-Programm auf eine Tabelle im Schema "test" zugreifen

Das folgende Programm demonstriert einen Zugriff auf eine Tabelle "myTable" im Katalog "test".

using System;
using System.Text;
using System.Data.Odbc;
using System.Collections.Generic;

namespace connect_via_odbc
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                string connectString = "DRIVER={MySQL ODBC 3.51 Driver};" +
                                       "SERVER=localhost;" +
                                       "DATABASE=test;" +
                                       "UID=myUserID;" +
                                       "PASSWORD=myPassWord;" ;

                OdbcConnection conn = new OdbcConnection(connectString);
                conn.Open();
                Console.WriteLine("connection established");

                OdbcCommand sql = conn.CreateCommand();
                sql.CommandText = "SELECT * FROM namen";
                OdbcDataReader reader = sql.ExecuteReader();
                Console.WriteLine("reading data from table namen");
                while (reader.Read())
                {
                    string row = "";
                    for (int i = 0; i < reader.FieldCount; i++)
                        row += reader.GetValue(i).ToString() + "  ";
                    Console.WriteLine(row);
                }
                conn.Close();
                Console.WriteLine("connection closed");
            }
            catch (OdbcException ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
    }
}
Valid XHTML 1.0 Transitional top Back Next Up Home