Mysql connect
-
hallo,
ich versuche gerade ein simples mysql-client-prog zu schreiben
#include <stdio.h> #include <windows.h> #include <my_global.h> #include <mysql.h> static char *opt_host_name = 'localhost'; /* Hostname */ static char *opt_user_name = 'mpm_root'; /* Username */ static char *opt_password = 'root'; /* Userpw */ static unsigned int opt_port_num = 0; /* Stdport */ static char *opt_socket_name = Null; static char *opt_db_name = 'mypersonalmanager'; static unsigned int opt_flags = 0; static MYSQL *conn; /* Zeiger auf Verbindungs-Handle */ int main (int argc, char *argv[]){ conn = mysql_init (Null); if (conn == NULL){ fprintf (stderr, "mysql_init() failed (probalby out of memory\n"); exit(1); } mysql_real_connect (conn, opt_host_name, opt_user_name, opt_password, opt_db_name, opt_port_num, opt_socket_name, opt_flags); if (mysql_real_connect (conn, opt_host_name, opt_user_name, opt_password, opt_db_name, opt_port_num, opt_socket_name, opt_flags) == NULL){ fprintf(stderr, "mysql_real_connect() failed: \nError %u (%s)\n", mysql_errno(conn), mysql_error(conn)); mysql_close(conn); exit(1); } mysql_close(conn); exit(0); }
wenn ich jetzt aber in der Eingabeaufforderung eingebe:
gcc -c -I"c:\programme\mysql\include" mysqlconnector.cgibts'n haufn fehlermeldungen:
In file included from mysqlconnector.c:3:0:
c:\programme\mysql\include/my_global.h:616:0: warning: "my_reinterpret_cast" red
efined
c:\programme\mysql\include/config-win.h:307:0: note: this is the location of the
previous definition
In file included from mysqlconnector.c:3:0:
c:\programme\mysql\include/my_global.h:1566:22: error: static declaration of 'ri
nt' follows non-static declaration
mysqlconnector.c:6:30: warning: character constant too long for its type
mysqlconnector.c:6:30: warning: initialization makes pointer from integer withou
t a cast
mysqlconnector.c:7:30: warning: character constant too long for its type
mysqlconnector.c:7:30: warning: initialization makes pointer from integer withou
t a cast
mysqlconnector.c:8:30: warning: multi-character character constant
mysqlconnector.c:8:30: warning: initialization makes pointer from integer withou
t a cast
mysqlconnector.c:10:32: error: 'Null' undeclared here (not in a function)
mysqlconnector.c:11:28: warning: character constant too long for its type
mysqlconnector.c:11:28: warning: initialization makes pointer from integer witho
ut a castund iwie kenn ich mich jetzt gar nicht mehr aus, ich programmier zwar schon einige zeit mit c aber ich hab keine ahnung was genau er da jetzt haben will, oder was ihm fehlt?!? bitte helft mir ich brauch das ganze für ein schulprojekt
viele dank an alle die mir helfen wollen
lg
larsmcluc
-
C unterscheidet zwischen Groß- und Kleinschreibung, also ist Null nicht NULL (Zeile 10 und Zeile 19).
Außerdem musst du für Strings "" benutzen, denn '' ist nur für ein einziges Zeichen.
Falsch:
static char *opt_host_name = 'localhost'; /* Hostname */
Richtig:
static char *opt_host_name = "localhost"; /* Hostname */
Dir fehlen wirklich sehr viele Grundlagen...
-
dankeschön,
tja das mit den grundlagen is so eine sache, ich programmier eher selten in c, mehr in python, pascal und basic, und da die syntax immer anders is verwechsle ich da leider manchmal einiges wenn ich länger nicht in einer sprache programmiert hab
danke nochmal