Lier une base de donnée mysql à un programme en C

hamzachar Messages postés 2 Date d'inscription samedi 4 février 2012 Statut Membre Dernière intervention 28 avril 2012 - 28 avril 2012 à 16:42
katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 - 9 mai 2012 à 12:12
Svp , je cherche des tutoriaux concernant l'installation de la biblio mysql en Dev++ et comment ce fait la liaison entre une base de donnée Mysql et et un programme en C .Merci d'avance :)

2 réponses

HSylvio Messages postés 116 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 14 juin 2012
3 mai 2012 à 16:34
Ca ne te conviendra peut-être pas mais j'utilise la librairie "libpq-fe.h" (tu la trouveras avec des exemples sur le net) pour accéder à une base postgresql;
Il faut que tu ajoutes -lpq au linker, tu dois pouvoir faire ça depuis ton interface dev++;
après tu pourras créer des objets comme
    PGconn 		*myConnection;
    PGresult   	*res;


et créer des fonctions comme
bool PGSQL_Interface::sendRequestWithOutput(string toSend, vector<string> *the_output){
string aString = toSend;
    res = PQexec(myConnection, aString.c_str());
    if (PQresultStatus(res) != PGRES_TUPLES_OK)
    {
    	myLog<<getDate()<< " _ PQexec failed: "<< PQerrorMessage(myConnection)<<"; Command was : "<<toSend<<endl<<endl;
    	if (aString.substr(0,11)!="DROP TABLE " && aString.substr(0,13)!="CREATE TABLE "){
        	getchar();
        }
        PQclear(res);
exit_nicely();
init_Connection();
return false;
    }
    else{
    	bool toRet;
    	toRet = retrieveSQLOutput(the_output);
        res = PQexec(myConnection, "FETCH ALL in myportal;");


        return toRet;
    }


J'espère que ça t'aidera, désolé de pas pouvoir être plus précis...
0
katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 3
9 mai 2012 à 12:12
Salut... Devc++ peut télécharger des paquets contenant header, librairie et exemples. Après il n'y a plus qu'à créer un projet et compiler. Là je suis sous linux donc je te laisse fouiller dans les menus.

Sinon c'est une librairie comme une autre donc dans le projet mettre le #include qui va bien, dans les options préciser le dossier include -I et le dossier des librairies pour le linker -L... et puis le -lmysql qui correspond au nom de la lib libmysql.a

De plus le site de MySQL devrait certainement avoir de la documentation cad du code avec des commentaires. Le code est assez simple et direct.
0
Rejoignez-nous