mysqlclient library, wie benutzen?
-
Achja, ich lese immer, dass ich die mysqlclient library benutzen soll... aber wie? Die Faq ist mir da nicht besonders hilfreich. Ich benutze C++ und dachte jetzt an der C Api von Mysql zu programmieren. (Microsoft Visual Studio 7)
Oder gibt es geniale Tutorials, die in das Thema einführen? Danke!
-
-
Hab's jetzt gemacht, wie's dort beschrieben ist:
// mysql-test.cpp : Definiert den Einstiegspunkt für die Konsolenanwendung. // #include <stdio.h> #if defined __WIN32__ || _MSC_VER #include <windows.h> #endif #include "stdafx.h" #include "mysql/mysql.h" int _tmain(int argc, _TCHAR* argv[]) { return 0; }
ich habe den kompletten "include"-ordner vom mysql server verzeichnis
in mein projekt verzeichnis geschoben... und diesen in mysql umbenannt.wenn ich jetzt die appl. ausführen möchte, bekomme ich 'n haufen fehlermeldungen:
------ Erstellen gestartet: Projekt: mysql-test, Konfiguration: Debug Win32 ------
Kompilieren...
mysql-test.cpp
c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\mysql\mysql_com.h(154) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'fd'
c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\mysql\mysql_com.h(154) : error C2501: 'st_net::SOCKET': Fehlende Speicherklasse oder Typspezifizierer
c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\mysql\mysql_com.h(154) : error C2501: 'st_net::fd': Fehlende Speicherklasse oder Typspezifizierer
c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\mysql\mysql_com.h(298) : error C2065: 'SOCKET': nichtdeklarierter Bezeichner
c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\mysql\mysql_com.h(298) : error C2146: Syntaxfehler: Fehlendes ')' vor Bezeichner 's'
c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\mysql\mysql_com.h(299) : error C2059: Syntaxfehler: ')'Das Build-Protokoll wurde unter "file://c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\Debug\BuildLog.htm" gespeichert.
mysql-test - 6 Fehler, 0 Warnung(en)---------------------- Fertig ----------------------
Erstellen: 0 erfolgreich, 1 fehlgeschlagen, 0 übersprungen
Woran liegt's?
-
wenn ich den pfad zum mysql server dir direkt angebe
#include "C:/Programme/MySQL/MySQL Server 4.1/include/mysql.h"
bekomme ich die gleichen fehlermeldungen.
-
machs mal einfacher
#include <time.h> #include <stdio.h> #include <windows.h> #include "wo/auch/immer/mysql.h" int main () { MYSQL_RES *mTabelle; MYSQL_ROW mRecord; MYSQL *mConnection, mDB; int mError; mysql_init(&mDB); mConnection =mysql_real_connect(&mDB,"localhost","root","","test",0,0,0); if (mConnection == NULL) { printf("Es konnte keine Verbindung zur Datenbank hergestellt werden"); return 1; } else { printf("Es wurde erfolgreich eine Verbindung hergestellt!"); } mysql_close(mConnection); return 0; }
nur zum testen.
vergiss nicht, die lib mitzulinken.so long erstmal
ps: achtung: mach mal den windows include vor dem mysql include.
-
Okay, habe es jetzt so:
// mysql-test.cpp : Definiert den Einstiegspunkt für die Konsolenanwendung. // #include <time.h> #include <stdio.h> #include <windows.h> #include "C:/Programme/MySQL/MySQL Server 4.1/include/mysql.h" int main() { MYSQL_RES *mTabelle; MYSQL_ROW mRecord; MYSQL *mConnection, mDB; int mError; mysql_init(&mDB); mConnection =mysql_real_connect(&mDB,"localhost","root","","test",0,0,0); if (mConnection == NULL) { printf("Es konnte keine Verbindung zur Datenbank hergestellt werden"); return 1; } else { printf("Es wurde erfolgreich eine Verbindung hergestellt!"); } mysql_close(mConnection); return 0; }
Aber dieser Fehler tritt auf und ich verstehe absolut nicht wieso/weshalb/warum!
------ Erstellen gestartet: Projekt: mysql-test, Konfiguration: Debug Win32 ------
Kompilieren...
mysql-test.cpp
c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\mysql-test.cpp(28) : fatal error C1010: Unerwartetes Dateiende während der Suche nach der Direktive für die vorkompilierte HeaderdateiDas Build-Protokoll wurde unter "file://c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\Debug\BuildLog.htm" gespeichert.
mysql-test - 1 Fehler, 0 Warnung(en)---------------------- Fertig ----------------------
Erstellen: 0 erfolgreich, 1 fehlgeschlagen, 0 übersprungen
-
st_net::SOCKET': Fehlende Speicherklasse oder Typspezifizierer
Dieser Fehler kommt wenn man die Socketunterstützung nicht aktiviert.
include <AfxSocket.h>
-
falsches forum
-
shareholder schrieb:
c:\Dokumente und Einstellungen\jens\Eigene Dateien\Visual Studio Projects\mysql-test\mysql-test.cpp(28) : fatal error C1010: Unerwartetes Dateiende während der Suche nach der Direktive für die vorkompilierte Headerdatei
Du solltest zuerst mal lernen, deinen Compiler zu benutzen. Wenn du "Use precompiled header file" (/Yu) angibst, dann musst du das angegebene File auch als erstes inkludieren, sonst beschwert sich der Compiler. Bei den meisten neuen Projekten der IDE ist das standardmäßig eingeschaltet.