IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Discussion :

Requête SQL avec variable externe


Sujet :

Bases de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 18
    Par défaut Requête SQL avec variable externe
    Bonjour à tous,

    Me voila devant un problème sous QT,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    void energie_sqlite3::dbLecture()
    {
    int Noeud_Selecetionner=nb;
    QSqlQuery query_energieP1;
    query_energieP1.exec("SELECT mesure FROM energieP WHERE idNoeud='Noeud_Selecetionner' ORDER BY id DESC LIMIT 0,1");
    QSqlRecord rec_energieP1 = query_energieP1.record();
    int nameCol_energieP1 = rec_energieP1.indexOf("mesure"); // Index du champs mesure
    while (query_energieP1.next())
    var[0] = query_energieP1.value(nameCol_energieP1).toString(); //Stock le contenu de la colone dans le tableau var
    
    [...]
    }
    int NoeudSelectionner = nb où nb sera amener à changer de 0 à 200 valeure renvoyer depuis une autre fenêtre.

    Mon souci ?

    Je voudrais que ma requête me renvois l'équivalent de :

    SELECT mesure FROM energieP WHERE idNoeud = 1 ORDER BY id DESC LIMIT 0,1;
    Mon programme ne me donne pas d'erreur avec le code que je vous ai montrez plus haut, il me renseigne via un warning que NoeudSelectionner n'est pas utiliser.

    En effet il ne passe pas en noir dans ma requête.

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Par défaut
    Saluton,
    Ce n'est pas un problème MySQL, c'est un problème QT, ou, tout simplement, une faute de frappe
    Noeud_Selecetionner
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  3. #3
    Membre Expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Par défaut
    Citation Envoyé par Maljuna Kris Voir le message
    Saluton,
    Ce n'est pas un problème MySQL, c'est un problème QT, ou, tout simplement, une faute de frappe
    En outre ceci semble confirmer que MySQL n'est pas concerné
    void energie_sqlite3::dbLecture()
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 18
    Par défaut
    Non pas de faute de frappe dans mon programme c'est en retapant que j'ai fait cette faute.

    Certes j'utilise SQLite mais les requête SQL ne change pas juste les méthode d'accession du moins dans mon cas.

    Ce que je demande c'est comment faire pour mettre ma variable à la place de idNoeud=?

    Cela relève peu être de QT je vais aller poster dans une partie mieux approprié à mon souci

  5. #5
    Membre Expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Par défaut
    En dernière analyse, si idNoeud est numérique, la valeur ne devrait pas être entre quotes.
    WHERE idNoeud=Noeud_Selecetionner
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 18
    Par défaut
    Dans la base de donnée idNoeud sont chiffré oui.

    Si je fait votre façon sans guillemet c'est toujours la même erreur que QT me renvois :
    Noeud_Selectionner n'est pas utiliser

    Mon compilateur va en faite chercher "Noeud_Slectionner" dans la colonne idNoeud de ma table energieP dans la bas de donnée. Et ne me renverra aucune valeurs du champs mesure.

    J'ai essayer une autre façon pour concaténer le tous mais sans succes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    int Noeud_Selecetionner=nb;
    QSqlQuery query_energieP1;
    query_energieP1.exec("SELECT mesure FROM energieP WHERE idNoeud="+Noeud_Selecetionner+ "ORDER BY id DESC LIMIT 0,1");

Discussions similaires

  1. [MySQL] requête SQL avec variables non renseignées
    Par Boris56 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 08/03/2010, 14h50
  2. [MySQL] Requête SQL avec variable
    Par kate59 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/04/2008, 14h12
  3. Requête SQL avec variables
    Par BMT_Benoît dans le forum Windows Forms
    Réponses: 36
    Dernier message: 12/07/2007, 12h35
  4. Problème avec requête SQL avec variables
    Par harry25 dans le forum ASP
    Réponses: 1
    Dernier message: 03/01/2007, 03h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo