Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Verbindung zu einer MariaDB Datenbank herstellen (https://www.delphipraxis.net/199950-verbindung-zu-einer-mariadb-datenbank-herstellen.html)

delphicoder123 4. Mär 2019 22:20

Datenbank: mariadb • Version: 10.1 • Zugriff über: Firedac

Verbindung zu einer MariaDB Datenbank herstellen
 
Liste der Anhänge anzeigen (Anzahl: 3)
Hallo,
wenn ich eine Verbindung zu einer MariaDB Datenbank herstellen möchte, dann erhalte ich folgende Fehlermeldung:

https://www.delphipraxis.net/attachm...1&d=1551737479

Obwohl, die .dll-Dateien im Projektordner vorhanden sind.

https://www.delphipraxis.net/attachm...1&d=1551737672


Hier sind meine Einstellungen:

https://www.delphipraxis.net/attachm...1&d=1551737749


Der Port, Benutzername, Passwort etc. stimmen. Mit den Daten kann ich mich auch über HeidiSQl einloggen.
Was mache ich falsch?

mkinzler 4. Mär 2019 22:27

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Die Dateien müssen nicht im Projektverzeichnis sein, sondern im Verzeichnis der EXE. Passt die Bitigkeit?

delphicoder123 4. Mär 2019 22:56

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Liste der Anhänge anzeigen (Anzahl: 2)
Zitat:

Zitat von mkinzler (Beitrag 1426956)
Die Dateien müssen nicht im Projektverzeichnis sein, sondern im Verzeichnis der EXE. Passt die Bitigkeit?

Ich habe, die Dateien in das Verzeichnis der EXE kopiert.
Ich habe ein 64 Bit Betriebssystem.
Das müssten 64-Bit DLL Dateien sein. Die dll-Dateien habe ich aus dem mysql bzw. mariadb Programe Ordner.

https://www.delphipraxis.net/attachm...1&d=1551740145

https://www.delphipraxis.net/attachm...1&d=1551740153

p80286 5. Mär 2019 07:39

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Zitat:

Zitat von delphicoder123 (Beitrag 1426959)
Zitat:

Zitat von mkinzler (Beitrag 1426956)
Die Dateien müssen nicht im Projektverzeichnis sein, sondern im Verzeichnis der EXE. Passt die Bitigkeit?

Ich habe, die Dateien in das Verzeichnis der EXE kopiert.
Ich habe ein 64 Bit Betriebssystem.
Das müssten 64-Bit DLL Dateien sein. Die dll-Dateien habe ich aus dem mysql bzw. mariadb Programe Ordner.

https://www.delphipraxis.net/attachm...1&d=1551740145

https://www.delphipraxis.net/attachm...1&d=1551740153

Den Anhängen entnehme ich, daß es sich um 32bit-Dlls handelt. hast Du ein 32Bit Compilat?

Gruß
K-H

delphicoder123 5. Mär 2019 12:12

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Zitat:

Zitat von p80286 (Beitrag 1426967)
Zitat:

Zitat von delphicoder123 (Beitrag 1426959)
Zitat:

Zitat von mkinzler (Beitrag 1426956)
Die Dateien müssen nicht im Projektverzeichnis sein, sondern im Verzeichnis der EXE. Passt die Bitigkeit?

Ich habe, die Dateien in das Verzeichnis der EXE kopiert.
Ich habe ein 64 Bit Betriebssystem.
Das müssten 64-Bit DLL Dateien sein. Die dll-Dateien habe ich aus dem mysql bzw. mariadb Programe Ordner.

https://www.delphipraxis.net/attachm...1&d=1551740145

https://www.delphipraxis.net/attachm...1&d=1551740153

Den Anhängen entnehme ich, daß es sich um 32bit-Dlls handelt. hast Du ein 32Bit Compilat?

Gruß
K-H

Wo bekome ich die 64-bit dll Dateien her?
Woran sehe ich, ob ich ein 32Bit oder 64 Bit Compilat besitze?
Ich habe ein 64 Bit Betriebssystem, falls du das meinst.

Schokohase 5. Mär 2019 12:21

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Es kommt nicht auf das Betriebssystem oder auf den Datenbankserver an, sondern einzig und ausschließlich auf deine Anwendung die du da gerade erzeugst.

Ist dies eine 32-Bit Anwendung, dann brauchst du die 32-Bit DLL-Dateien
Ist dies eine 64-Bit Anwendung, dann brauchst du die 64-Bit DLL-Dateien

... und du solltest wissen was es ist, denn du erzeugst diese Anwendung.

Ja, eine 32-Bit Anwendung kann auf einem 32-Bit oder 64-Bit System laufen und eine 64-Bit Anwendung nur auf einem 64-Bit System. Trotz allem kommt es nur auf die Anwendung selber an.

Schokohase 5. Mär 2019 12:43

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hier mal ein kleines Beispielprojekt, wie man dieses recht komfortabel lösen kann.

Die "Magie" des Kopierens liegt dabei in den Projekt-Optionen
Anhang 50780
So kann man pro Platform andere Dateien in den Anwendungspfad kopieren lassen.

Guido R. 5. Mär 2019 15:11

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Verwendest Du ein tFDPhysMySQLDriverLink und hast Du die Eigenschaft "VendorLib" auf die libmysql.dll oder libmariadb.dll gesetzt?

delphicoder123 5. Mär 2019 22:43

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Zitat:

Zitat von Schokohase (Beitrag 1426983)
Es kommt nicht auf das Betriebssystem oder auf den Datenbankserver an, sondern einzig und ausschließlich auf deine Anwendung die du da gerade erzeugst.

Ist dies eine 32-Bit Anwendung, dann brauchst du die 32-Bit DLL-Dateien
Ist dies eine 64-Bit Anwendung, dann brauchst du die 64-Bit DLL-Dateien

... und du solltest wissen was es ist, denn du erzeugst diese Anwendung.

Ja, eine 32-Bit Anwendung kann auf einem 32-Bit oder 64-Bit System laufen und eine 64-Bit Anwendung nur auf einem 64-Bit System. Trotz allem kommt es nur auf die Anwendung selber an.


Ich habe im Task Manager nachgeschaut. Es ist eine 32-Bit Anwendung.
Die 32 Bit dll-Datei habe ich hier gedownloaded und in den gleichen Pfad, wo die EXE liegt, kopiert.
http://www.dlldownloader.com/libmysql-dll/

Ich bekomme weiterhin, die gleiche Fehlermeldung.

delphicoder123 5. Mär 2019 22:47

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Zitat:

Zitat von Guido R. (Beitrag 1427002)
Verwendest Du ein tFDPhysMySQLDriverLink und hast Du die Eigenschaft "VendorLib" auf die libmysql.dll oder libmariadb.dll gesetzt?

Nein, habe ich nicht. Wann und wo muss ich das machen? Beim erstellen des Formulars?

delphicoder123 6. Mär 2019 22:54

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Ich weiß immer noch nicht, wo der Fehler liegt.

TiGü 7. Mär 2019 08:34

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Zitat:

Zitat von delphicoder123 (Beitrag 1427021)
Zitat:

Zitat von Guido R. (Beitrag 1427002)
Verwendest Du ein tFDPhysMySQLDriverLink und hast Du die Eigenschaft "VendorLib" auf die libmysql.dll oder libmariadb.dll gesetzt?

Nein, habe ich nicht. Wann und wo muss ich das machen? Beim erstellen des Formulars?

LMGTFY!
http://docwiki.embarcadero.com/Libra...ySQLDriverLink
http://docwiki.embarcadero.com/RADSt...erver_(FireDAC)
https://community.idera.com/develope...ariadb-support

Codehunter 7. Mär 2019 10:32

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Meiner Meinung nach hat die ursprüngliche Fehlermeldung schon den entscheidenden Hinweis gegeben: Beim Versuch die DLL zu laden, wurde wohl eine gefunden, deren Bitzahl aber nicht passt. Gefordert wird in der Fehlermeldung 32 Bit (x86). Wahrscheinlich hat deine Anwendung irgendwo anders zuerst eine x64-DLL zu fassen bekommen.

delphicoder123 11. Mär 2019 22:38

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Zitat:

Zitat von Codehunter (Beitrag 1427185)
Meiner Meinung nach hat die ursprüngliche Fehlermeldung schon den entscheidenden Hinweis gegeben: Beim Versuch die DLL zu laden, wurde wohl eine gefunden, deren Bitzahl aber nicht passt. Gefordert wird in der Fehlermeldung 32 Bit (x86). Wahrscheinlich hat deine Anwendung irgendwo anders zuerst eine x64-DLL zu fassen bekommen.

@Codehunter
Wo finde ich aber diese 32 Bit DLL?
Auf der MySQL Seite unter Connectors war die 32 Bit DLL nicht dabei.

https://dev.mysql.com/downloads/connector/odbc/

mkinzler 12. Mär 2019 05:44

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
https://dev.mysql.com/downloads/file/?id=484651

Codehunter 12. Mär 2019 11:48

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Da es hier um MariaDB ging: https://downloads.mariadb.org/ und dort nach unten scrollen zu "MariaDB Connector/C x.x Series"

Prinzipiell gehen die MySQL-Connectoren auch, sind schnittstellenkompatibel. Allerdings könnte es mit MariaDB-spezifischen Erweiterungen (Storage Engines...) Probleme geben. Ferner stehen die MySQL-Konnektoren unter der GPL, die von MariaDB unter der LGPL. Das kann einen großen Unterschied machen wenn du dein Programm verkaufen möchtest.

delphicoder123 17. Mär 2019 12:11

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
Zitat:

Zitat von Codehunter (Beitrag 1427544)
Da es hier um MariaDB ging: https://downloads.mariadb.org/ und dort nach unten scrollen zu "MariaDB Connector/C x.x Series"

Prinzipiell gehen die MySQL-Connectoren auch, sind schnittstellenkompatibel. Allerdings könnte es mit MariaDB-spezifischen Erweiterungen (Storage Engines...) Probleme geben. Ferner stehen die MySQL-Konnektoren unter der GPL, die von MariaDB unter der LGPL. Das kann einen großen Unterschied machen wenn du dein Programm verkaufen möchtest.


Sorry, dass ich mich erst jetzt melde, aber darin ist die dll auch nicht vorhanden.

TurboMagic 17. Mär 2019 13:17

AW: Verbindung zu einer MariaDB Datenbank herstellen
 
So, und jetzt braucht der OP noch die Info woran er sieht, auf was er sein Delphi eingestellt hat.
Er möge doch mal im Projektmanager seines Projektes in Delphi nachschauen.
Da gibt's so einen Zielplattformen Eintrag. Der isses... ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz