Hi Leute, willkomen zu meinem 2ten Tutorial
Da ich endlich eine MYSQL Datenbank hier ersteigert habe, konnte ich egstern Nacht gleich mal ausprobieren und herumexperimentieren, mit Delphi und MYSQL.
Als Vorkenntnisse solltet ihr haben
- Delphi (ganz klar)
- Befehle und Aufbau von MYSQL, dazu am besten die Manuals unter http://dev.mysql.com/doc/mysql/de/Windows_installation.html durchlesen
In meinem Thema geht es um:
Wie verbinde ich mich mit einer MYSQL Datenbank (egal ob extern oder localhost), führe auf dieser Befehle aus und welche Utilitien brauch ich?
Für Neulinge hört sich das vielleicht recht kompliziert an, allerdings ist es recht einfach. Ein kleines Delphi Update Names ZEOLIB macht dies zum Kinderspiel, man muß nur wissen wie ;)
zu finden unter: http://sourceforge.net/projects/zeoslib/
Dort die Version 6.1.5 (stable) runterladen. Es gibt noch einen Patch, diesen habe ich aber nicht installiert, wer Erfahrungen mit diesem Patch hat kann mir ja ne PN schicken. Danke!
Nun müsst ihr dieses Package installieren. In der README Datei wird alles einfach beschrieben (unbedingt die Reihenfolge einhalten!!!).
Nun zur Programmierung:
Auf die Form1 fügen wir als erstes unter "Datenzugriff" das Objekt "DataSource" ein.
Nach Installation der Zeos Packages finden wir ganz oben eine neue Registerreihe mit dem Name "Zeos Access". Von dort benötigen wir nun "ZConnection" und "ZQuery".
Erläuterung der 3 Objekten:
DataSource = Ist ein übergangsstück um die Daten der MYSQL Datenbank in dem Programm zu implementieren. Wird für fast jede Datenbank Applikation unter Delphi benötigt
ZConnection = Verbindet sich mit dem entsprechendem Server.
ZQuery = Führt die entsprechenden MYSQL Befehle aus.
Konifguration der 3 Objekten:
1.) ZConnection
unter "HostName" geben wir die Datenbank Adresse ein. Für eine lokale Datenbank (dazu müsst ihr MYSQL auf eurem rechner installieren) den "localhost" wählen, für unser Beispiel allerdings "mysql.lima-city.de". Unter "Database" dann die Datenbank auswählen, ich nehme als Beispiel mal "DB242001" (Datenbank muß nicht vorhanden sein und wenn habt ihr sicher keinen Zugriff, erst muß eine Datenbank hier ersteiegrt werden!). Unter "User" und "Password" noch euer Benutzername und Passwort eingeben. Jetzt noch sehr wichtig das Protocol. Dies ist natürlich "mysql". Der "Port" muß 3306 (Standart MYSQL Port). Als letztes muß "Connected" noch auf TRUE gesetzt werden und fertig, kommen wir zur
2.) DataSource
hier habt ihr nichts anderes zu tun als bei "Dataset" den Namen eurer gewünschten Query einzugeben. In unserem Beispiel "ZQuery1". Nun wird die
3.) ZQuery1
konfiguriert. Bei "Connection" müsst ihr eure "ZConnection1" auswählen. Jetzt kommt eiegntlich das wichtigste an dem ganzen. Bei "SQL" könnt ihr eure MYSQL Befehle eingeben! Die Befehle einfach als normale Strings in ZQuery1.SQL einfügen und mit "ZQuery1.ExecSQL" führt ihr die Befehle aus.
Nach der Koniguartion der 3 Objekten können wir mit einem Beispiel beginnen (Dieses Beispiel benötigt eine vorhandene Tabelle mit dem Namen "tiere" und den Spalten "Name" und "Art"). Wir fügen als nächstes aus der "Datenzugriff" Reihe 2 "DBEdit" Komponente ein und ein "DBNavigator". Alle 3 Komponenten nun mit "DataSource1" verbinden. Ausserdem bei "DataField" die jeweilige Spalte auswählen. Zuvor muß allerdings noch bei "ZQuery1" der "SQL" Befehl erstellt werden. Für dieses Beispiel geben wir "select * from tiere", danach "Active" auf TRUE setzen. Wenn jetzt alles richtig eingestellt ist dann können die "Fieldname" ausgewählt werden. Startet euer Programm und testet ob ihr mit dem Navigator, Datensätze lesen und schreiben könnt. Ist dies der Fall dann
HERZLICHEN GLÜCKWUNSCH
Bei mir ging es mehrere Stunden bis ich alles verstanden habe. Nehmt euch wirklich viel Zeit dafür und lasst euch nie untergriegen!
Bei Fragen einfach an mich wenden, werde das TUT dann auch vervollständigen falls etwas fehlen sollte.
Bis zum nächsten TUT
Gruß Tobi