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

MFC Discussion :

[MFC] Requette Sql


Sujet :

MFC

  1. #1
    Débutant Avatar de torNAdE
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    255
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 255
    Points : 121
    Points
    121
    Par défaut [MFC] Requette Sql
    Salut,
    mon probleme est que je ne parvien pas à formuler une requette sql et la faire tournée.
    j ai une classe CAllSet (CrecordSet) et une classe CAllView (CRecordView).
    Ds la forme de CAllView j ai un bouton. qd j'y clique dessus je recuperes ce qui etais ecrit par l'utilisateur(Nom et Prenom).
    ma base à comme DSN Users_BD dont la quelle j'ai une table Users.
    maintenant je voudrais ecrire une requete sql de type SELECT et par laquelle j'afficherai le reste des champs associe au Nom et Prenom.

    j'ai vraiment besoin d'aider Merci

  2. #2
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    ben pour ce qui est de ta classe CRecordset je connais pas la synthaxe mais pour ta requete ça devrait donner un truc dans le meme genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select * from Users where nom = '"+ m_nom + "' and prenom = '"+ prenom +"'";
    voila

    soit un peu plus explicite dans tes questions

  3. #3
    Débutant Avatar de torNAdE
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    255
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 255
    Points : 121
    Points
    121
    Par défaut
    Merci pour ton aide, mais supposons que la requete est correcte de point de vue syntaxe.
    je ne sais pas comment l'appeller.j'utilise ODBC.
    que dois je ecrire du coté code pour l'appler j ai chercher ds MSDN et tous ce qie j ai trouve c'est qu'il me faut un CDatabase et un CRecordset, mais comme je vous ai deja dit j ai ma CRecordset(CAllSet).Alors ??
    j'en suis un debutant en VC++

  4. #4
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    essaye peu etre un truc dans ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    CAllSet.execute(ta requete SQL);
    CAllSet->execute(ta requete SQL);
    en tout cas je pense que ce doi etre assez proche du resultat final.

    sinon ouvre ton .h contenant la declaration des methodes de la classe CRecordset pour voir la synthaxe exacte.

    Et au pire des cas si tu capte rien post le sur le forum on y jeterra un coup d'oeil


    voila

  5. #5
    Débutant Avatar de torNAdE
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    255
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 255
    Points : 121
    Points
    121
    Par défaut
    Hihi, je pense que je pourra faire comme ca mais je ne suis pas si sure car je ne sais pas comment ecrire une requete sql mais voila j'ecrivais ma requete ici et svp si c'est pas la bonne syntaxe merci de me le dire comment .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     m_pSet->m_pDatabase->ExecuteSQL("ma requete");
    mais est il vrai d'ecrire comme ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    m_pSet->m_pDatabase->ExecuteSQL("SELECT * FROM [USers] WHERE m_Nom=' "+Pascal+" ' ");
    je ne sais pas ou il faut mettere les parenthese et tous les autres machins.

  6. #6
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    ben pour cette ligne :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    m_pSet->m_pDatabase->ExecuteSQL("SELECT * FROM [USers] WHERE m_Nom=' "+Pascal+" ' ");
    si users c'est le nom de ta table t'a pas besoin de crochet.
    m_Nom correspond à ta variable crée dans le classWizard ou au nom du champ dans ta table ? dans ce cas la c'est juste.
    quand à pascal je suppose que ce doit etre une chaine que tu a saisi toi meme à la main
    dans ce cas tu n'a pas besoin d'écrire ca mais plutot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    WHERE m_Nom='Pascal' ");
    la maniere dont tu l'a saisie serai bonnne si pascal est le nom de ta variable membre.

    voila bonne chance pour la suite

  7. #7
    Membre éprouvé
    Avatar de Gabrielly
    Inscrit en
    Juin 2004
    Messages
    722
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 722
    Points : 1 128
    Points
    1 128
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    CDatabase MySqlConnection;
    MySqlConnection.Open("DSN=Users_BD;UID=utilisateur_de_la_db;PWD=password_utilisateur;DATABASE=ta_db_name");
     
    CAllSet rs(&MySqlConnection);
     
    CString strSQL = "SELECT * FROM [USers] WHERE Nom= ' "+Pascal+ " ' ";
    rs.Open(strSQL);  // il exécute la requête

  8. #8
    Débutant Avatar de torNAdE
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    255
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 255
    Points : 121
    Points
    121
    Par défaut
    mais ma base est access alors comment dois je reformuler la connection ?

  9. #9
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    ta connection ressemblera à ca :


    ODBC
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;Uid=Admin;Pwd=;"

    OleDBConnection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;User Id=admin;Password=;"
    voila

Discussions similaires

  1. requête SQL et Access
    Par sovo dans le forum Requêtes et SQL.
    Réponses: 16
    Dernier message: 06/04/2016, 19h41
  2. besoin d'aide sur une requette sql
    Par maxidoove dans le forum Langage SQL
    Réponses: 13
    Dernier message: 10/10/2005, 18h42
  3. requette sql un peu tordue
    Par maxidoove dans le forum Langage SQL
    Réponses: 3
    Dernier message: 26/08/2005, 14h52
  4. rave et requette sql
    Par developpeur_mehdi dans le forum Bases de données
    Réponses: 2
    Dernier message: 10/04/2004, 16h34
  5. requette sql compliqué sous delphi
    Par developpeur_mehdi dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/03/2004, 16h33

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