écrire dans une base de données

Signaler
Messages postés
17
Date d'inscription
dimanche 6 mars 2005
Statut
Membre
Dernière intervention
6 juin 2007
-
Messages postés
4
Date d'inscription
mercredi 6 décembre 2000
Statut
Membre
Dernière intervention
3 avril 2008
-
Salut,
J'aimerais savoir s'il est possible d'écrit dans une base de donnée sql à partir d'un programme écrit en C++ (ou meme en C). J'ai longuement cherché sur internet et les seules explications/sources que j'ai trouvé permettent seulement de récuperer des données (mais pas d'écrire).

En fait j'ai fait un casse briques et j'aimerai que les meilleurs scores soient affichés sur une page web...

5 réponses

Messages postés
178
Date d'inscription
mardi 16 août 2005
Statut
Membre
Dernière intervention
25 août 2010
1
Comme d'hab, faut préciser le sgbd : oracle, mssql, mysql, posgre,access ...

Donc tu a ADO (y du code de BruNews), ODBC, et les API spécifiques à chaque moteur (ex : OCI pour oracle, .....)
Sachant que ADO et ODBC seront beaucoup plus lent, moins performant et ne peuvent prendre en compte le spécificité et points forts de certains sgbd  que les API de chaque sgbd (objet et PL/SQL pour oracle, ...)...
De plus en fonction du language, C ou C++, cr'est pas le même choix car des milliards de classes C++ pour tout les sgdb existent mais le choix est plus restreint en C....
Messages postés
17
Date d'inscription
dimanche 6 mars 2005
Statut
Membre
Dernière intervention
6 juin 2007

C'est du mysql. Je pensais utiliser ADO mais je n'y comprend pa grand chose !
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
13
Salut,

Je te conseille d'utiliser ADO. Je l'utilise depuis quelque temps avec
MySQL et j'en suis très satisfait. Je dirais même étonné par sa
rapidité et son efficacité dans un réseau local d'une vingtaine de
postes. Pour pouvoir l'utiliser dans un programme client, il te faudra
télécharger et installer le driver ODBC disponible sur le site officiel
de MySQL. Voici un exemple de code C++ utilisant une base MySQL avec
ADO:


#include <windows.h>

#import "C:\Program Files\Fichiers communs\System\ADO\msado15.dll" no_namespace rename("EOF", "EndOfFile")


_ConnectionPtr  pdb = 0;

char chaine[]="Driver={MySQL ODBC 3.51 Driver}; Server=localhost;
Database=nombase; User=nomutilisateur; Password=motdepasse; Option=4;";

pdb.CreateInstance(__uuidof(Connection));

pdb->Open(chaine,"","", 0);

_RecordsetPtr   prs=0;

prs.CreateInstance (__uuidof (Recordset));

char requete[]="SELECT nom, prenom  FROM table1;'";

prs->Open(requete,pdb.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);

//Voici les différentes métodes qu'on peut utiliser:

// prs->AddNew(); pour ajouter un nouveau recordset

// prs->Update(); pour mettre à jour ou ajouter un enregistrement à la base

// prs->Delete(); pour supprimer un enregistrement

// prs->Fields->GetItem("nom")->PutValue("Dupont"); pour modifier le contenu d'un champ par exemple.

// Etc.

prs->Close();

pdb->Close();
Messages postés
968
Date d'inscription
jeudi 20 mai 2004
Statut
Membre
Dernière intervention
26 avril 2013
1
bonjour,

je profite du post ouvert pr ma question qui est
dans le mm style : pour SQL Server vous me confirmez que ado est assez performant?
 pr effectuer de multiples requetes periodiquement ?
ou faut se diriger vers autre chose?

 
Messages postés
4
Date d'inscription
mercredi 6 décembre 2000
Statut
Membre
Dernière intervention
3 avril 2008

 bonjour.je suis entain de faire un stage,j'ai  eu une gestion du trace qui permer d'afficher tout les traces(historiques) qui sont faites par les developpeurs d'entreprise je veux quelqu'un m'aider de faire la partie de conception.merci