Pages : 1
#1 Le 02/07/2008, à 22:54
- Tug
[Résolu] Recherche tuto API MySQL
Bonjour,
Je voudrais faire un petit programme en C pour "attaquer" (je crois que c'est le terme) une base de données MySQL. Cette base de donnée existe déja et fonctionne avec PHP. J'ai fais quelque recherche sur internet et j'ai trouvé un programme pour commencer mon travail.
#include <my_global.h>
#include <mysql.h>
#include <stdio.h>
#include <stdlib.h>
MYSQL *conn;
int main(int argc, char**args) {
MYSQL *con;
MYSQL_RES *res;
MYSQL_ROW row;
unsigned int nb;
unsigned long *lengths;
unsigned int i;
conn = mysql_init(NULL);
if (conn==NULL) {
printf ("\aErreur d'initiation du client !\n");
exit(EXIT_FAILURE);
}
con = mysql_real_connect(conn, NULL, "pikachu", "pokemon", "Pokemon", 3306, NULL,0);
if (con==NULL) {
printf ("\aErreur de connection du client !\n");
exit(EXIT_FAILURE);
}
else
printf ("Connection établi !\nWelcome !\n");
if(mysql_query(conn, "select Login from User")==0) {
res = mysql_use_result(conn);
if (res == NULL)
printf ("\aPas de réponse !\n");
else {
nb = mysql_num_fields(res);
while ((row = mysql_fetch_row(res)))
{
lengths = mysql_fetch_lengths(res);
for(i = 0; i < nb; i++)
{
printf("[%.*s] ", (int) lengths[i], row[i] ? row[i] : "NULL");
}
printf("\n");
}
}
mysql_free_result(res);
}
else
printf ("\aProblème d'interrogation !\n");
mysql_close(conn);
printf("Fermeture du client. Bye !\n");
return 0;
}
et son Makefile associé.
all : client
MYI = -I/usr/include/mysql
MYLIBS = -L/usr/include/mysql/ -lmysqlclient
client : mysqlclient.c
$(CC) -o client mysqlclient.c $(MYI) $(MYLIBS)
clean:
-rm -f *.o
Lorsque je compile j'obtiens les erreurs suivante (je m'en doutais un peu).
mysqlclient.c:1:23: erreur: my_global.h : Aucun fichier ou dossier de ce type
mysqlclient.c:2:19: erreur: mysql.h : Aucun fichier ou dossier de ce type
Normal je n'ai pas installé le moindre paquet ou autre.
Merci d'avance pour votre aide, tuto, mot clé à recherché,...
Tug
Dernière modification par Tug (Le 24/07/2008, à 14:59)
Hors ligne
#2 Le 03/07/2008, à 07:08
- nicolas.sitbon
Re : [Résolu] Recherche tuto API MySQL
sudo apt-get install libmysqlclient15off libmysqlclient15-dev
En revanche l'entête my_global.h n'appartient pas à MySQL il me semble, si c'est un entête à toi, tu dois l'inclure comme ceci :
#include "my_global.h"
Hors ligne
#3 Le 24/07/2008, à 14:57
- Tug
Re : [Résolu] Recherche tuto API MySQL
Merci Nicolas pour ta réponse.
Mais je vais plutôt utiliser Shell car une autre partit de mon programme l'utilise.
En revanche pour ceux qui sont intéressé j'ai trouvé ce tuto
Dernière modification par Tug (Le 24/07/2008, à 14:58)
Hors ligne