1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
/* pour integrer l'API WinSock on a le choix entre #include<winsock> et #define __LCC__
dans le fichier mysql.h lignes 34(ça depend de la version) nous avons:
#ifdef __LCC__
#include <winsock.h> // For windows
#endif
alors si on met #define __LCC__ cela engendre l'inclusion de winsock.h
*/
#define __LCC__
//#include <winsock.h>
#include <stdio.h>
#include "mysql.h" // guillemet pour dire que l'header est dans le répertoire courant du projet
#include <conio.h>
#include <time.h>
MYSQL *mysqlconnexion;
MYSQL_ROW myROW;
MYSQL_RES *myRES;
const char * hostname,*user,*password;
unsigned int port;
void sleep(int nbr_seconds);
int main()
{
//initialisation des parametres de connexion
hostname="localhost";
user="root";
password=""; // => pas de password pour l'utilisateur
port=3306;
//initialisation du gestionnaire de la connexion à la base de données mySQL
mysqlconnexion=mysql_init(NULL);
if(!mysqlconnexion)
{
printf("Echec de l'initialisation du gestionnaire de la connexion mysql\n");
return -1;
}
printf("Initialisation du gestionnaire de la connexion mysql avec succes\n");
//tentative de connexion au serveur mySQL
if (!mysql_real_connect(mysqlconnexion,hostname,user,password,NULL,port,NULL,0))
{
printf("Echec lors de la tentative de connexion au serveur mySQL\n");
return -1;
}
printf("Connexion au serveur mySQL reussie\n");
// execution d'un simple requête pour récuperer l'ensemble des bases de données
mysql_query(mysqlconnexion,"show databases");
//initialisation du jeu de résultats et l'enregistre dans le client
myRES = mysql_store_result(mysqlconnexion);
if (myRES)
{
//parcours de l'ensemble des lignes du resultat myRES
for(unsigned int i = 0; i < myRES->row_count /*nombre de lignes dans la structure du resultat*/; i++)
{
myROW = mysql_fetch_row(myRES);
for(unsigned int j = 0; j < mysql_num_fields(myRES)/*nombre de champs(colonnes) dans une ligne du resultat*/; j++)
{
//affichage de la valeur du J ème champs de la ligne en cours du resultat.
printf("%s ", myROW[j]);
}
//retour à la ligne aprés affichage des valeurs de tous les champs de ligne en cours du resultat myRES
printf("\n");
}
//Libèration de la mémoire allouée au résultat myRES
mysql_free_result(myRES);
}
// fermeture de la connexion et libèration du pointeur de connexion mysqlconnexion
mysql_close(mysqlconnexion);
return 0;
} |
Partager