Hallo, ich möchte auf die mit php geschriebene Datenbank aus dem XAMPP-Paket zugreifen.
Das BS ist Windows 10 64 bit, das XAMPP und die
DB sowie Delphi sind 32 bit.
Über
ODBC und
BDE habe ich die Verbindung schnell hinbekommen. Nun habe ich mir Delphi 10.3 geholt (
BDE muß man nachinstallieren, und dann über Komponente|Packages installieren die dclbde240.bpl eintragen) und möchte das auf SQLConnection - die ja eigentlich für
SQL-
DB zuständig ist, umstellen. Allerdings bekomme ich nur die Meldung
DBX-Fehler: Der Treiber konnte nicht korrekt initialisiert werden. usf.
Die
DB liegt auf einer anderen Partition in T:\xampp\
mysql\bin ; die
ODBC-Treiber und Connectoren habe ich extra geholt, und sie haben sich in "C:\Program Files (x86)\MariaDB\MariaDB Connector C\lib\libmariadb.dll" installiert. Die Bibliothek heißt also libmariadb.dll und nicht libmysql.dll.
Nach etwas Suchen habe ich den Daten-Explorer gefunden; er startet nicht wie angegeben durch Doppelclick auf die SQLConnection, sondern über Ansicht|Tool-Fenster->Daten-Explorer, oder indem man unten im Projekt-Fenster "Daten-Explorer" auswählt. Durch Rechtsclick auf
SQL kann man eine neue Verbindung eintragen und durch Rechtsclick darauf diese Ändern.
Nun auf Erweitert clicken und in den Einträgen der Verbindung die libmysql.dll durch libmariadb.dll ersetzen.
Der Connector hat im Pfad "C:\Program Files (x86)\MariaDB\MariaDB Connector C\lib\" (und weiteres) eingetragen, und außerdem habe ich diese ins Programmverzeichnis kopiert und dort nochmal als libmysql.dll kopiert.
Leider läuft das nicht - im Verbindungs-Editor ist eine Funktion "Verbindung testen" und die gibt o.g. Fehlermeldung.
Der Verbindungsstring ist
DriverName=
MySQL;DriverUnit=Data.DBXMySQL;DriverPa ckageLoader=TDBXDynalinkDriverLoader,DbxCommonDriv er260.bpl;DriverAssemblyLoader=Borland.Data.TDBXDy nalinkDriverLoader,Borland.Data.DbxCommonDriver,Ve rsion=24.0.0.0,Culture=neutral,PublicKeyToken=91d6 2ebb5b0d1b1b;MetaDataPackageLoader=TDBXMySqlMetaDa taCommandFactory,DbxMySQLDriver260.bpl;MetaDataAss emblyLoader=Borland.Data.TDBXMySqlMetaDataCommandF actory,Borland.Data.DbxMySQLDriver,Version=24.0.0. 0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b; LibraryName=dbxmys.dll;LibraryNameOsx=libsqlmys.dy lib;VendorLib=libmariadb.dll;VendorLibWin64=libmar iadb.dll;VendorLibOsx=mariadbclient.lib;Database=m s_adr;User_Name=root;MaxBlobSize=-1;LocaleCode=0000;Compressed=False;Encrypted=False ;BlobSize=-1;ErrorResourceFile=
Vielleicht weißjemand ... ?
Grüße, MarsdeBu