mysql Datenbankabfrage - Fehler
-
Erst mal Hallo an Alle,
bin neu hier und auch recht neu im Gebiet der C-Programmierung. Bis jetzt bin ich ja durch suchen und Threads lesen zurechtgekommen. Jetzt habe ich aber ein für mich im Augenblick nicht lösbares Problem:
Ziel: MySQL Datenbank auslesen von einem Linux-Server. (z.B. SELECT * FROM testdb;) Ich benutze übrigens Visual C++ 6.0 Professional
Ich poste mal den code den ich bis jetzt habe:
#include <mysql.h> //Die mysql.h habe ich ins Basisverzeichniss kopiert! #include <stdio.h> void main(){ MYSQL *mysql; MYSQL_RES *res; MYSQL_ROW row; char *query; int t,r; mysql_init(mysql); if (!mysql_real_connect(mysql,"10.1.8.10","root", "","cd_handel",0,NULL,0)) { printf( "Error connectin ot database: %s\n",mysql_error(mysql)); } else printf("Connected...\n"); query="select * from artist"; t=mysql_real_query(mysql,query,(unsigned int) strlen(query)); if (t) { printf("Error making query: %s\n", mysql_error(mysql)); } else printf("Query made...\n"); res=mysql_use_result(mysql); for(r=0;r<=mysql_field_count(mysql);r++){ row=mysql_fetch_row(res); if(row<0) break; for(t=0;t<mysql_num_fields(res);t++){ printf("%s ",row[t]); } printf("\n"); } mysql_close(mysql); }Wenn ich den Code kompiliere kommen folgende Fehler:
--------------------Konfiguration: mysql_query2 - Win32 Debug-------------------- Kompilierung läuft... mysql_query2.cpp e:\win2k\programme\microsoft visual studio\vc98\include\mysql_com.h(116) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'fd' e:\win2k\programme\microsoft visual studio\vc98\include\mysql_com.h(116) : error C2501: 'SOCKET' : Fehlende Speicherklasse oder Typbezeichner e:\win2k\programme\microsoft visual studio\vc98\include\mysql_com.h(116) : error C2501: 'fd' : Fehlende Speicherklasse oder Typbezeichner e:\win2k\programme\microsoft visual studio\vc98\include\mysql_com.h(180) : error C2065: 'SOCKET' : nichtdeklarierter Bezeichner e:\win2k\programme\microsoft visual studio\vc98\include\mysql_com.h(180) : error C2146: Syntaxfehler : Fehlendes ')' vor Bezeichner 's' e:\win2k\programme\microsoft visual studio\vc98\include\mysql_com.h(181) : error C2059: Syntaxfehler : ')' f:\c-programme\datenbankabfrage\mysql_query2.cpp(21) : error C2065: 'strlen' : nichtdeklarierter Bezeichner f:\c-programme\datenbankabfrage\mysql_query2.cpp(29) : warning C4018: '<=' : Konflikt zwischen signed und unsigned f:\c-programme\datenbankabfrage\mysql_query2.cpp(32) : warning C4018: '<' : Konflikt zwischen signed und unsigned Fehler beim Ausführen von cl.exe. mysql_query2.obj - 7 Fehler, 2 Warnung(en)Ich habe auch schon nachgeforscht und einiges getestet. Leider komme ich nicht auf die Ursache. Die mysql.h habe ich von meinen Linux-Server kopiert. Kann das sein das die "defekt" ist? Wenn ja, wo kann ich eine "ganze" downloaden.
Danke Euch für jede Hilfe!
Gruß
Patrick
PS. Hoffe ich habe das richtige Forum erwischt
-
So, das gleiche C Script auf der Linux über vi.
Dann kommt nach dem kombilieren folgendes:
mysql.c:5: error:
mysql' undeclared (first use in this function) mysql.c:5: error: (Each undeclared identifier is reported only once mysql.c:5: error: for each function it appears in.) mysql.c:6: error:res' undeclared (first use in this function)
mysql.c:4: warning: return type of `main' is not `int'Danke nochmal für jede Hilfe.
Gruß
Patrick
-
auch wenn du im falschen Forum bist:
Bei Windows musst du noch die Socketunterstützung includen.#include <afxsocket.h>
Solltest du in Zukunft eine Problem haben dann schaue bitte in welches Forum deine Frage passt.
C/C++ != C#;Bevor du postest benutze die Suchfunktion des Forums. Dein Problem wurde schon x-mal gefragt und beantwortet.
-
Unix-Tom schrieb:
auch wenn du im falschen Forum bist:
Bei Windows musst du noch die Socketunterstützung includen.#include <afxsocket.h>
Solltest du in Zukunft eine Problem haben dann schaue bitte in welches Forum deine Frage passt.
C/C++ != C#;Bevor du postest benutze die Suchfunktion des Forums. Dein Problem wurde schon x-mal gefragt und beantwortet.
Danke dir.
Hatte schon gesucht aber nix gefunden.
-
Hi, ich hab eine Frage, woher bekommen ich die mysql.h und wo müsste ich die dann hintun?
Hab mir von mysql.com des mysql++1.7.9 runtergeladen, hab aber keine Ahnung wie ich die einsetze oder was ich damit machen muss.
-
Ich benutze übrigens Visual C++ 6.0 Professional
ja, dann man da auch hin...
-
Dieser Thread wurde von Moderator/in AndreasW aus dem Forum C# und .NET in das Forum MFC mit dem Visual C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Die mysql++ ist eine Wrapper-Klasse für dioe MySQL-API. Deshalb muss du die MySQL-API auch runterladen.
Du kannst aber auch in die FAQ-MFC schauen.