PDA

Visualizza la versione completa : [C] Header mancante per connessione a MySQL


KaNnA
28-03-2007, 11:55
Ciao a tutti,
in un mio programma ho l'esigenza di connettermi ad un server MySql.
Googlando ho trovato questo codice:


#include <mysql.h>
#include <stdio.h>

int main(void) {
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;

char *server = "localhost";
char *user = "root";
char *password = "*****";
char *database = "pdm";

conn = mysql_init(NULL);

/* Connect to database */
if (!mysql_real_connect(conn, server,
user, password, database, 0, NULL, 0)) {
fprintf(stderr, "%s\n", mysql_error(conn));
exit(0);
}

/* send SQL query */
if (mysql_query(conn, "SELECT * FROM utenti")) {
fprintf(stderr, "%s\n", mysql_error(conn));
exit(0);
}

res = mysql_use_result(conn);

/* output fields 1 and 2 of each row */
while ((row = mysql_fetch_row(res)) != NULL)
printf("%s %s\n", row[1], row[2]);

/* Release memory used to store results and close connection */
mysql_free_result(res);
mysql_close(conn);
}

E restituisce errore nel cercare la libreria mysql.h.
In effetti, se vado a controllare nella cartella includes (sono sotto winxp con dev c++) non esiste quel file.
Allora ho scaricato una libreria che, a detta del sito da dove l'ho scaricata, dovrebbe essere la libreria ufficiale.
Ma il problema persiste, da errore su molte linee di codice della libreria.
Qualcuno sa dove posso trovare una libreria mysql funzionante?
Ed il codice che ho postato qua Ŕ giusto?
Grazie mille.

mondobimbi
29-03-2007, 10:16
purtroppo su windows non ti posso essere di grande aiuto, inizia con il guardare qui
http://dev.mysql.com/doc/refman/5.0/en/building-clients.html

prova a scaricarti mysql client, dovrebbe contenere la cartella con la libreria, che sarÓ un .lib e anche l'header.
Poi devi dire al tuo compilatore e al linker dove si trova la libreria e dove l'header, sono le impostazioni -L e -I .
Il codice che hai postato sembra giusto una volta che hai installato il client.
spero di esserti stato di aiuto
sergio

Loading