extraire une bdd sqlite

extraire une bdd sqlite - C++ - Programmation

Marsh Posté le 28-02-2006 à 20:37:25    

Bonjour,
j'aimerais savoir comment faire pour extraire les données d'une bdd sqlite.
J'utilise Qt comme langage de développement.
J'ai bien tester :  

Code :
  1. int sqlite3_exec(
  2. sqlite3*,
  3. const char *sql,
  4. sqlite_callback,
  5. void *,
  6. char **errmsg
  7. );


mais je ne voit pas comment faire pour enregistrer les données dans mes variables!
merci d'avance pour vos réponses!   :heink:

Reply

Marsh Posté le 28-02-2006 à 20:37:25   

Reply

Marsh Posté le 28-02-2006 à 20:47:43    

super le code ! rien que des déclarations ! [:petrus75]
et sinon, il est ou le vrai code ?


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 28-02-2006 à 21:43:36    

bien voila, je vien de faire une trés grosse recherche et j'en suis rendu la!!

Code :
  1. bool Bdd::extraire(QString sql)
  2. {
  3.         QSqlQuery query("SELECT * FROM "+ sql);           //mettre le nom de la base de donné
  4.         while (query.next())
  5.         {
  6.               if (sql == "Cours" )
  7.               {
  8.                       int nomCours = rec.indexOf("nomCours" );           //mettre le nom de la  1er colonne analysée
  9.                       int typeCours = rec.indexOf("typeCours" );           //mettre le nom de la  2em colonne analysée
  10.                       int salle = rec.indexOf("salle" );           //mettre le nom de la  3em colonne analysée
  11.                       int heureDeb = rec.indexOf("heureDeb" );           //mettre le nom de la  4em colonne analysée
  12.                       int heureFin = rec.indexOf("heureFin" );           //mettre le nom de la  5em colonne analysée
  13.                       int idCours = rec.indexOf("idCours" );           //mettre le nom de la  6em colonne analysée
  14.                       this->listeCours->append(new Cours (query.value(nomCours).toString(),query.value(typeCours).toString(),query.value(salle).toString(),query.value(heureDeb),query.value(heureFin),query.value(idCours));
  15.               }
  16. }


Je n'est pas encore tester, mais je pense qu'il doit y avoir des erreur, pouvez vous me dire si ce code est optimisé et pourrait marché?

Message cité 1 fois
Message édité par transistor49 le 28-02-2006 à 22:01:48
Reply

Marsh Posté le 28-02-2006 à 21:55:44    

transistor49 a écrit :


Code :
  1. if (sql == "Cours" )



 
jamais la condition ne sera vérifiée : tu es en train de comparer des char*.
 
Si tu veux continuer à utiliser des char*, utilise les fonctions C (genre strcmp : #include <string.h> )
Sinon, fais du C++ et utilise le type string (#include <string> )


Message édité par franceso le 28-02-2006 à 21:58:05
Reply

Marsh Posté le 28-02-2006 à 22:02:05    

oups excuse moi, je vien de faire la modification!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed