Discussion:
Delphi XE8 und mySQL / Installation
(zu alt für eine Antwort)
Jakob Achterndiek
2015-06-10 11:45:09 UTC
Permalink
Hallo,

beim Versuch, ein umfangreiches, über Jahre in Delphi 5 prof mit
MS Access gebasteltes und gepflegtes Programm jetzt mit XE8 und
mySQL nachzubauen, stehe ich bei der Einbindung der Datenbank auf
dem Schlauch - und bitte um einen hilfreichen Fingerzeig.

Im Formular TForm1 = class(TForm)
sind aus der Komponentenleiste übernommen und angezeigt:
mySQLDatabase1: TmySQLDatabase;
mySQLTable1: TmySQLTable;
mySQLQuery1: TmySQLQuery;
DataSource1: TDataSource;
DBNavigator1: TDBNavigator;
DBGrid1: TDBGrid;


Eine vorhandene mySQL-Datei ist in die Komponenten eingetragen,
deren Inhalt wird im Entwurfstadium im DBGrid richtig angezeigt.

Jetzt aber:
Wenn ich versuche, dieses Miniprogramm zu kompilieren bzw. zu
starten, dann bekomme ich die Fehlermeldung:
"Unit MySQLDBTables nicht gefunden"

Der Schlauch:
Wo steckt diese Unit, die im Entwurfstadium ja schon genutzt,
aber vom Compiler nicht gefunden wird?
Und wie kriege ich die dann, wenn ich sie finde, eingebunden?

Nachtrag:
Ich nutze XE8 derzeit als Trial-Version und habe noch für drei
Wochen Zugriffsrecht.

Gruß
j/\a
--
Achim Kalwa
2015-06-10 11:51:06 UTC
Permalink
Moin,

[...]
Post by Jakob Achterndiek
Im Formular TForm1 = class(TForm)
mySQLDatabase1: TmySQLDatabase;
mySQLTable1: TmySQLTable;
mySQLQuery1: TmySQLQuery;
DataSource1: TDataSource;
DBNavigator1: TDBNavigator;
DBGrid1: TDBGrid;
Eine vorhandene mySQL-Datei ist in die Komponenten eingetragen,
deren Inhalt wird im Entwurfstadium im DBGrid richtig angezeigt.
Wenn ich versuche, dieses Miniprogramm zu kompilieren bzw. zu
"Unit MySQLDBTables nicht gefunden"
Was sind denn das für Komponenten? Bei Delphi XE8 ist jedenfalls nichts
gleichnamiges dabei. Daher vermute ich, dass es sich um
ThirdParty-Komponenten handelt. Die Designtime-Packages werden in der
IDE geladen; aber die Runtime-Libraries werden nicht gefunden.

Möglicherweise musst Du den Library-Suchpfad so erweitern, dass die
DCU-Dateien zu diesen Komponenten gefunden werden.

HTH
Achim
Jakob Achterndiek
2015-06-10 12:37:30 UTC
Permalink
Am 10.06.2015, 13:51 Uhr, schrieb Achim Kalwa
Post by Achim Kalwa
Post by Jakob Achterndiek
Im Formular TForm1 = class(TForm)
mySQLDatabase1: TmySQLDatabase;
mySQLTable1: TmySQLTable;
mySQLQuery1: TmySQLQuery;
DataSource1: TDataSource;
DBNavigator1: TDBNavigator;
DBGrid1: TDBGrid;
[..]
Was sind denn das für Komponenten? Bei Delphi XE8 ist jedenfalls
nichts gleichnamiges dabei. [..]
Danke für die Antwort.
Bei mir stehen die in der klassischen Ansicht in der Komponentenleiste.
Siehe dazu die ScreenCopy in <Loading Image...>.
Dies ist das Abbild in der Entwurfsansicht mit genau den Komponenten.
Die angezeigte mySQL-Datei steht auf meinem Rechner.

Gruß
j/\a
--
Achim Kalwa
2015-06-10 14:49:12 UTC
Permalink
Post by Jakob Achterndiek
Am 10.06.2015, 13:51 Uhr, schrieb Achim Kalwa
Post by Achim Kalwa
Was sind denn das für Komponenten? Bei Delphi XE8 ist jedenfalls
nichts gleichnamiges dabei. [..]
Danke für die Antwort.
Bei mir stehen die in der klassischen Ansicht in der Komponentenleiste.
Siehe dazu die ScreenCopy in <http://buzemann.de/publ/xe8_mySQL.gif>.
Dies ist das Abbild in der Entwurfsansicht mit genau den Komponenten.
Die angezeigte mySQL-Datei steht auf meinem Rechner.
Das sieht aber ganz stark nach "DAC for MySQL" aus, also 3rd-Party:
https://www.microolap.com/products/connectivity/mysqldac/

Du hast doch diese Komponenten irgendwo hin installiert; dort sollten
dann auch die DCU-Dateien liegen, welche beim compilieren in Deine
Anwendung integriert werden.
Post by Jakob Achterndiek
"Unit MySQLDBTables nicht gefunden"
Du musst entweder den Library-Pfad in den IDE-Optionen entsprechend
erweitern (Tools -> Options -> Delphi Options -> Library), oder aber in
den Projekt-Optionen den Suchpfad zu den Komponenten einstellen (Project
-> Options -> Delphi Compiler -> Search Path).


Achim
Jakob Achterndiek
2015-06-10 16:45:10 UTC
Permalink
Am 10.06.2015, 16:49 Uhr, schrieb Achim Kalwa
Post by Achim Kalwa
Post by Jakob Achterndiek
Bei mir stehen die in der klassischen Ansicht in der Komponentenleiste.
Siehe dazu die ScreenCopy in <http://buzemann.de/publ/xe8_mySQL.gif>.
Dies ist das Abbild in der Entwurfsansicht mit genau den Komponenten.
Die angezeigte mySQL-Datei steht auf meinem Rechner.
https://www.microolap.com/products/connectivity/mysqldac/
Stimmt, das hatte ich mir vorher mal (sogar gegen Geld) geholt und
mit Delphi 5 prof verbunden. Da hat es aber gehakelt.

Erstaunlich finde ich jetzt, daß XE8 es zwar bei der Installation
gefunden hat in in der Entwurfsphase darauf zugreift, es dann aber
nicht kompilieren und einbinden mag. Mal sehen, was Deine Vorschläge
bringen.
Post by Achim Kalwa
(Tools -> Options -> Delphi Options -> Library),
(Project -> Options -> Delphi Compiler -> Search Path).
Ich melde mich dann gern noch einmal.
Dank und Gruß
j/\a
--
Matthias Hanft
2015-06-10 17:12:01 UTC
Permalink
Hallo,

nur der Vollständigkeit halber: Wenn man nicht unbedingt visuelle Komponenten
verwenden will/muss, kann man "DirectSQL" verwenden:
http://sourceforge.net/projects/directsql/
Ist zwar schon zehn Jahre alt, aber das funktioniert auch heute noch perfekt,
man braucht nix installieren, keine DLLs, keine Komponenten, keine 3rd-Party-
Produkte, einfach nix...

Ich bin inzwischen dazu übergegangen, meine Abfragen damit selber zu machen
und irgendwelche CheckListBoxes, StringGrids etc. mit den Ergebnissen einfach
selber zu füllen. Seitdem hat sich die Hatz nach irgendwelchen Komponenten
(und der Ärger damit) erledigt.

Ein Tutorial gibts auch: http://www.delphi-treff.de/tutorials/datenbanken/mysql-direct/

Nur mal so als Anregung, vielleicht kannst du's ja für irgendein Projekt
mal brauchen...

Gruß Matthias.
Jakob Achterndiek
2015-06-12 11:22:56 UTC
Permalink
Am 10.06.2015, 16:49 Uhr, schrieb Achim Kalwa
Post by Achim Kalwa
Du musst entweder den Library-Pfad in den IDE-Optionen entsprechend
erweitern (Tools -> Options -> Delphi Options -> Library), oder aber in
den Projekt-Optionen den Suchpfad zu den Komponenten einstellen (Project
-> Options -> Delphi Compiler -> Search Path).
Hallo Achim,

mit Hilfe Deiner Wegweiser habe ich die Einstellungen so hinfummeln
können, daß mein Mini-Programm mit DAC for MySQL richtig kompiliert
und als .exe erzeugt wird. Danke also noch einmal für den Hinweis.

Jetzt hoffe ich, daß das Programm alle geplanten Erweiterungen auch
aushält - und daß am Ende die XE8-Lizenz nicht gar so teuer wird.

Gruß
j/\a
--

Loading...