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 :

LIKE dans WHERE en SQL Vba [AC-2016]


Sujet :

Requêtes et SQL.

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 224
    Points : 544
    Points
    544
    Par défaut LIKE dans WHERE en SQL Vba
    Salut à tous,

    Décidément j'ai un peu de mal avec les ' et " dans les Sql en Vba
    Je voudrais un like "ZZZ*" dans un WHERE en Vba

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    strSQLGenerale = "SELECT DISTINCT T_Générale.NomRaisonSociale, T_Générale.refcli" & _
                                " FROM T_Générale" & _
                                " WHERE (((T_Générale.NomRaisonSociale) LIKE '"ZZZ*"'))" & _
                                " ORDER BY T_Générale.NomRaisonSociale;"
    J'ai aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    strSQLGenerale = "SELECT DISTINCT T_Générale.NomRaisonSociale, T_Générale.refcli" & _
                                " FROM T_Générale" & _
                                "  WHERE (((T_Générale.NomRaisonSociale) Like '" & "ZZZ*" & "'))" & _
                                " ORDER BY T_Générale.NomRaisonSociale;"
    Le résultat me dit qu'il n'y a pas d'enregistrement alors qu j'en ai au moins 25

    Merci pour votre aide

  2. #2
    Membre régulier
    Homme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Mai 2016
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mai 2016
    Messages : 78
    Points : 96
    Points
    96
    Par défaut
    Bonjour :

    Pourquoi ne pas effectuer la requête à partir de l'assistant de requête qui utilise les tables et non du SQL , c'est beaucoup plus facile et il y'a beaucoup moins d'erreurs

    lors de l'ecriture du SQL .Il est plus facile de manier des tables que du langage SQL .

    CDT.

  3. #3
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 637
    Points : 14 611
    Points
    14 611
    Par défaut
    bonjour,
    la simple apostrophe ' est le caractère standard SQL pour délimiter les textes. Access permet les guillemets " dans le SQL Access, mais c'est aussi le délimiteur de texte dans VBA ce qui peut laisser perplexe beaucoup de débutants car il est faut doubler les guillemets pour coller à la syntaxe VBA à l'intérieur des guillemets:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "  WHERE (((T_Générale.NomRaisonSociale) Like ""ZZZ*""))" & _
    Sinon, si c'est du littéral, faire au plus simple: guillemets pour VBA apostrophe pour SQL:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "  WHERE (((T_Générale.NomRaisonSociale) Like 'ZZZ*'))" & _
    Le caractère de concaténation & est utile uniquement si le critère est une variable:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim StCritere as String
    stCritere = "ZZZ"
    strSQLGenerale = "SELECT DISTINCT T_Générale.NomRaisonSociale, T_Générale.refcli" & _
                                " FROM T_Générale" & _
                                " WHERE (((T_Générale.NomRaisonSociale) LIKE '" & stCritere & "*'))" & _
                                " ORDER BY T_Générale.NomRaisonSociale;"
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 224
    Points : 544
    Points
    544
    Par défaut
    Bonsoir,

    Merci c OK, je pense y voir un peu plus clair

    A+

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 04/12/2015, 19h32
  2. Optimisation du LIKE dans une Requete SQL
    Par maxwel56 dans le forum Requêtes
    Réponses: 3
    Dernier message: 11/02/2012, 22h36
  3. Utiliser un alias de colonne dans une clause Where MS SQL
    Par sir dragorn dans le forum Langage SQL
    Réponses: 11
    Dernier message: 12/10/2011, 09h31
  4. Problème avec like dans une requête SQL
    Par Boublou dans le forum SQL
    Réponses: 2
    Dernier message: 16/08/2007, 15h46
  5. [SQL] LIKE dans un sprintf ...
    Par banzaii dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 23/11/2005, 16h57

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