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

Requêtes et SQL. Discussion :

code dans une requête SQL


Sujet :

Requêtes et SQL.

  1. #1
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 102
    Points : 86
    Points
    86
    Par défaut code dans une requête SQL
    Bonjour
    En fait le but de ce code est d'afficher une liste d'objet d'une table selon des critères(ici le nom du livre, celui de l'auteur...) choisi grâce à des cases d'option, et selon une liste(LstRecherche).
    Par exemple l'utilisateur cherche un bouquin par auteur, il coche le critère par auteur, puis il choisit ds la liste le nom de l'auteur.
    Mais après j'ai un problème pr afficher la recherche.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub cmdRechercher_Click()
     
    If chkChoix.Value = 1 Then
        DoCmd.RunSQL ("SELECT * FROM qryListebis WHERE ObjectNomAuteur = " & LstRecherche.Value)
        ElseIf chkChoix.Value = 2 Then
            DoCmd.RunSQL ("SELECT * FROM qryListebis WHERE ObjectNomLivre = " & LstRecherche.Value)
            ElseIf chkChoix.Value = 3 Then
                DoCmd.RunSQL ("SELECT * FROM qryListebis WHERE ObjectNomCollection = " & LstRecherche.Value)
    End If
     
    End Sub
    Merci pr votre aide

  2. #2
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 102
    Points : 86
    Points
    86
    Par défaut
    J'ai oublié d'indiquer l'erreur:
    erreur '3075'
    Erreur de syntaxe ds l'expression
    'ObjectNomAuteur='

    Voilà

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 427
    Points : 520
    Points
    520
    Par défaut
    Si les valeurs de la liste sont des String, il faut mettre la valeur entre quotes
    Personnellement j'encadre ce typre de valeurs par des chr(34) (double quote) pour éviter les problêmes d'apostrophes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    DoCmd.RunSQL ("SELECT * FROM qryListebis WHERE ObjectNomAuteur = " & chr(34) & LstRecherche.Value & chr(34))
    Ou
    DoCmd.RunSQL ("SELECT * FROM qryListebis WHERE ObjectNomAuteur = '" & LstRecherche.Value & "'")

  4. #4
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 102
    Points : 86
    Points
    86
    Par défaut
    J'ai effectué la modification, maintenant erreur '2342'
    Une action ExecuterSQL nécessite un argumant consistant en une instruction SQL

    Je suis bloqué devant ca

  5. #5
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    pense à déboguer ton SQL :
    http://cafeine.developpez.com/access...el/debugprint/

  6. #6
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Points : 367
    Points
    367
    Par défaut
    Bonjour,

    la définition de runsql

    RunSQL(InstructionSQL, UtiliserTransaction)

    instructionSQL: Expression chaîne qui correspond à une instruction SQL valide pour une requête action ou une requête définition des données. Elle utilise une instruction INSERT INTO, DELETE, SELECT...INTO, UPDATE, CREATE TABLE, ALTER TABLE, DROP TABLE, CREATE INDEX ou DROP INDEX.

    A+

  7. #7
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 102
    Points : 86
    Points
    86
    Par défaut
    Merci à tous, j'ai compris certaines choses et cela fonctionne je laisse le code final:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub cmdRechercher_Click()
     
    If chkChoix.Value = 1 Then
        LstRecherche.RowSource = "SELECT * FROM tblLivre WHERE ObjectNomAuteur = txtCledeRecherche.Value "
        ElseIf chkChoix.Value = 2 Then
            LstRecherche.RowSource = "SELECT * FROM tblLivre WHERE ObjectNomLivre = txtCledeRecherche.Value "
            ElseIf chkChoix.Value = 3 Then
                LstRecherche.RowSource = "SELECT * FROM tblLivre WHERE ObjectNomCollection = txtCledeRecherche.Value "
     
    End If
     
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Erreur dans une requête sql
    Par Goundy dans le forum PHP & Base de données
    Réponses: 37
    Dernier message: 30/01/2006, 16h08
  2. [SQL] Récupérer des variables de formulaire dans une requête SQL
    Par psychoBob dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 22/11/2005, 18h44
  3. Plusieurs jointures dans une requête sql
    Par Pero dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/09/2005, 20h59
  4. Nom de champ variable dans une requête SQL
    Par stip dans le forum ASP
    Réponses: 2
    Dernier message: 30/09/2004, 18h02
  5. Utilisation de MAX dans une requête SQL
    Par Evil onE dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/06/2004, 18h38

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