Advanced  Services Direktverbindung mit Hilfe des DOT-NET-Connectors von MySQL Back Next Up Home

Download des MySQL-DOT-NET-Connectors

Den Connector findet man unter

http://www.mysql.com/downloads

Jetzt wählt man links den Punkt "Connectors" aus und dann "Connector/Net". Sodann sucht man sich die neueste Version heraus und lädt diese herunter. Beim Schreiben dieser Anleitung ist dies die Version mit der Nummer "6.6.5". Wie zu erwarten, ist der Connector eine ausführbare Datei.


Installation des DOT.NET-Connectors

mysql-dotnet-connector-install-1.jpg

mysql-dotnet-connector-install-2.jpg

mysql-dotnet-connector-install-3.jpg

mysql-dotnet-connector-install-4.jpg

mysql-dotnet-connector-install-5.jpg

mysql-dotnet-connector-install-6.jpg


Konfiguration eines C#-Projektes in VisualStudio 2005/2008/2010

Der Connector installiert sich üblicherweise in einem zu seiner Versionsnummer passenden Verzeichnis. In diesem Fall ist dies: C:\Programme\MySQL\MySQL Connector Net 6.6.5. Im Verzeichnis C:\Programme\MySQL\MySQL Connector Net 6.6.5\Assemblies\v4.0 liegen dann die Dateien MySql.Data.dll, MySql.Data.Entity.dll und MySql.Web.dll. Die Datei MySql.Data.dll müssen wir VisualStudio noch bekanntgeben.

Zunächst legt man etwa ein C#-Konsolprojekt wie gewohnt an.

Als nächstes müssen wir unter References (Verweise) eine Ergänzung vornehmen und damit unserem Projekt die Datei MySql.Data.dll bekanntmachen.

Die Ergänzung des Verweises verläuft wie folgt:

Den Eintrag References markieren und mit der rechten Maustaste Kontextmenü aktivieren:

mysql-dotnet-connector-config-1.jpg

Karteikarte Browse auswählen:

mysql-dotnet-connector-config-2.jpg

Das Verzeichnis anwählen, das die Datei MySql.Data.dll enthält, hier C:\Programme\MySQL\MySQL Connector Net 6.6.5\Assemblies\v4.0 :

mysql-dotnet-connector-config-3.jpg

Nach dem Bestätigen sollte der Eintrag MySql.Data als Verweis enthalten sein:

mysql-dotnet-connector-config-4.jpg

Der oben angezeigte Eintrag System.Data rührt von der Installation des ODBC-Treibers her und wird hier nicht gebraucht. Jetzt können wir das notwendige using-Statement using MySql.Data.MySqlClient; ergänzen. Bereits nach dem Eintippen von using MySql. sollte VisualStudio einen Tooltip mit dem Eintrag Data anbieten.


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

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

using System;
using System.Text;
using MySql.Data.MySqlClient;
using System.Collections.Generic;

namespace connect_to_mysql
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                string connectString = "SERVER=localhost;" +
                                       "DATABASE=test;" +
                                       "UID=myID;" +
                                       "PASSWORD=myPassword;";

                MySqlConnection conn = new MySqlConnection(connectString);
                conn.Open();
                Console.WriteLine("connection established");
                MySqlCommand sql = conn.CreateCommand();
                sql.CommandText = "SELECT * FROM myTable";
                MySqlDataReader reader = sql.ExecuteReader();
                Console.WriteLine("reading data from table myTable");
                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 (MySqlException ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
    }
}

Remotezugriff auf einen MySQL-Server

Im obigen Fall handelt es sich um einen Zugriff auf eine lokale MySQL-Datenbank. Für einen Remotezugriff verfährt man als Client genauso, man braucht nur an Stelle der lokalen Adresse die remote-IP angeben.

string connectString = "SERVER=<ip.adresse.des.servers>;" +
                       "DATABASE=test;" +
                       "UID=myID;" +
                       "PASSWORD=myPassword;";

Im diesem Fall muß jedoch auf dem MySQL-Server der Client noch als Benutzer eingetragen werden, damit MySQL einen Verbindungsaufbau akzeptiert.

Valid XHTML 1.0 Transitional top Back Next Up Home