// ------------------------------------------------------------------------- //
// Exemple de connexion à MySQL via l'API C //
// ------------------------------------------------------------------------- //
// Compilation : //
// cc -I/usr/include/mysql -lmysqlclient mysql-apic.c -o mysql-apic //
// ------------------------------------------------------------------------- //
// Auteur: J-Pierre DEZELUS //
// Web: http://www.phpinfo.net/ //
// Email: jpdezelus@phpinfo.net //
// ------------------------------------------------------------------------- //
#include <stdio.h>
#include <mysql.h>
#define CFG_HOTE "mon_hote"
#define CFG_BASE "ma_base"
#define CFG_USER "mon_user"
#define CFG_PWD "mon_password"
int main(int argc, char *argv[]) {
MYSQL mysql;
MYSQL_RES * resultat;
MYSQL_ROW enr;
char sql[250];
printf("Connexion en cours ...\n");
if (!mysql_connect(&mysql, CFG_HOTE, CFG_USER, CFG_PWD)) {
printf("Connexion impossible !\n");
return(1);
}
printf("Connecté.\n");
printf("Sélection de la base ...\n");
if (mysql_select_db(&mysql, CFG_BASE)) {
printf("Accès à la base impossible !\n");
return(1);
}
printf("Base sélectionnée.\n");
strcpy(sql, "SELECT * ");
strcat(sql, "FROM ma_table ");
strcat(sql, "WHERE code > 0 ");
strcat(sql, "ORDER BY code");
mysql_query(&mysql, sql);
if (!(resultat = mysql_use_result(&mysql))) {
printf("Exécution de la requête impossible !\n");
return(1);
}
while ((enr = mysql_fetch_row(resultat))) {
printf("%s %s %s\n", enr[0], enr[1], enr[2]);
}
mysql_free_result(resultat);
printf("Deconnexion en cours ...\n");
mysql_close(&mysql);
printf("Déconnecté.\n");
return(0);
}