MySQL C-API: Fehler
-
Hallo,
und zwar hab ich hier ein MySQL-Paket: es lässt sich alles super kompilieren. wenn ich jedoch mysql_connect aufrufe sagt er mir:
"mysql_connect() konnte nicht in libmysql.dll" gefunden werden. lib und dll sind beide vorhanden. Hat jemand eine Idee?
Achja, wo finde ich eine aktuelle MySQL C-API online? hab die hier schon länger rumfliegen. ?
-
hi: The C API code is distributed with MySQL. It is included in the mysqlclient library and allows C programs to access a database.
Wenn schon c api, dann aber mit richtiger RDB (firebird, interbase, maxdb(!), dbmain, ms sqlserver, sql anywhere, db2, oracle, (emb.:) sql lite, hsql, derby ...)! Mit dem Spielzeug mysql (vollkommen unvollständiges und nicht der Norm 93/99/03 entsprechendes SQL, ziemlich kapute Datentypen, keine Transaktionsverarbeitung, keine referentielle Integrität ... ) handelst du dir da auf Dauer unlösbare Probleme ein.
von Ney
-
Hallo JayJay,
ich hatte mal nen ähnliches (wenn nicht sogar das gleiche) Problem.
Das Problem liegt (glaub ich) darin, dass dein Compiler oder Linker die .a nicht lesen,
kann und die erst konvertiert werden muss.
Gehe ich recht in der Annahme, dass du MinGW benutzt?Das Konvertieren ging glaub ich mit dlltool, einer Anwendung in deinem bin Verzeichnis.
Ich hoffe ich hab dir jetzt nix Falsches erzählt, ist schon etwas her, aber evtl.
hilft dir das weiter.Ich stell dir hier mal meine konvertierte Version zur Verfügung: Hier stan mal nen link
(Sag mal Bescheid, wenn du sie nicht mehr brauchst, dann lösch ich die URL wieder)Hier findest du die MySQL C Api: http://dev.mysql.com/doc/refman/5.0/en/apis.html bzw.
http://dev.mysql.com/doc/refman/5.1/en/c.htmlDie dll hast du aber schon in deinem System-Verzeichnis liegen oder in einem
Verzeichnis, das sich in deinem Path befindet oder?Gruß,
CSpille
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Datenbanken verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Hm, ich benutze Visual Studio 2005, (.a Dateien sind mir nicht bekannt?) Trotzdem danke für den Tipp mal schauen ob ich da was machen kann.
Achja, da müsste es doch eine API Für C++ geben die funktioniert? Die MySQL Seite verlinkt mich für die MySQL C++ API auf die Seite: http://tangentsoft.net/mysql++/ dort ist jedoch "nur" eine Old Version vorhandne, die mir rät diese Version nicht zu nutzen?
Gibt es keine aktuelle?
-
.a sind statische Libraries.
Als Linker-Option hast du doch -lmysql (oder so ähnlich)
Die holt sich die Informationen aus dieser Datei.
Da die C++ API nur die C API kapselt, kommt diese für mich nicht in
Frage und ich kann dir leider keine Auskunft geben.
-
Ok Danke werde mit diesem Informationen ein wenig rumspielen. Die DLL ist orgungsgemäß im Ordner des Programs.
Öhm blöde frage: Wo kann ich auf der MySQL Seite (C-API) das Packet downloaden?
-
Also für Alle ich konnte das Problem lösen, indem ich die libmySQL.dll in mein System32 Verzeichnis kopiert habe.
An dieser Stelle Danke an alle hier!
PS: Meine letzte Frage ist immernoch offen