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 MySQL Discussion :

Incompréhension d'une requête...


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2004
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 137
    Points : 63
    Points
    63
    Par défaut Incompréhension d'une requête...
    Salut,
    J'ai un petit soucis, je gère une base d'incident grâce à PHP/MySQL et il y a quelquechose que je ne comprends pas bien.
    On passera le code PHP qui remplace dans la requête suivante le '%' par une autre valeur quand il y en a besoin.
    Donc, ma fiche d'incident se compose de plusieurs champs et, via un formulaire, il est possible de n'afficher que les incidents que l'on souhaite par leur numéro ou leur lieu, la personne qui a ouvert l'incident, etc...
    Quand dans le formulaire laisse tous les champs de tri disponibles à 'Tous' (les numéros, les sites, etc...), c'est la requête suivante qui est exécutée. Et elle fonctionne !
    Mais lorsque l'un des '%' est remplacé par une autre valeur, je n'ai aucun résultat. Et ce même en allant taper directement la requête dans PHPMyAdmin, sans passer par du code PHP.
    POURQUOI ?!

    La requête en question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT id_fich, description FROM fiche WHERE 'id_fiche' LIKE '%' AND 'nom_app' LIKE '%' AND 'site' LIKE '%' AND 'caisse' LIKE '%' AND 'ticket' LIKE '%' AND 'clos' LIKE '%'
    Merci d'avoir lu ce long thread et merci encore plus à ceux qui pourront m'aider !

    Balise code rajouté par Alexandre T, merci d'y penser

  2. #2
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 903
    Points : 6 027
    Points
    6 027
    Par défaut
    Mais lorsque l'un des '%' est remplacé par une autre valeur
    dans ce cas précis, il faut être sûr que la valeur remplacée sera trouvée,

    Sinon, il faut ajouter '%' à la valeur recherchée:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select....where 'id_fiche' LIKE '%99'...
    pour les fiche se terminant par '99'

    et les autres combinaisons '%99%' '99%' etc... à toi de gérer !
    "Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
    -----------------------
    Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
    Usus magister est optimus

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2004
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 137
    Points : 63
    Points
    63
    Par défaut
    Merci mais les les '%' ne peuvent être remplacés que par les bonnes valeurs. Elles sont elles mêmes cherchées dynamiquement et inscrites dans les listes déroulantes qui composent le formulaire.
    Par exemple pour chercher la fiche 1, je remplace le 1er '%' de la requête par '1' et ça ne me retourne aucun résultat...
    Je ne comprends pas !!!

  4. #4
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 903
    Points : 6 027
    Points
    6 027
    Par défaut
    :o

    J'avais pas fait gaffe sur ton 1er post, mais je crois que le nom des colonnes dans la clause WHERE ne doivent pas être mises entre quotes.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ...WHERE id_fiche like....
    De plus, les valeurs recherchées doivent être du même type que la colonne. En mettant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ...WHERE id_fiche like '1'...
    ça laisse supposer que id_fiche est une colonne de type (VAR)CHAR.... est-ce le cas ?
    "Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
    -----------------------
    Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
    Usus magister est optimus

  5. #5
    Membre du Club
    Inscrit en
    Juillet 2004
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 137
    Points : 63
    Points
    63
    Par défaut
    OK, ça marche !
    Le problème venait des quotes devant les noms de colonne. Aussi bizarre que cela puisse être : PHPMyAdmin donne la version php de la requête avec des quotes, et cette requête marchait avec les '%'...

    Merci beaucoup en tous cas !

    A+ !

  6. #6
    Membre expert
    Avatar de Alexandre T
    Homme Profil pro
    Chef de projets AMO
    Inscrit en
    Mai 2002
    Messages
    1 213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets AMO
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 213
    Points : 3 001
    Points
    3 001
    Par défaut
    Quand un sujet est résolu, merci de cliquer sur Résolu Ca évite de lire des posts inutilement Merci
    Alexandre Tranchant
    Chef de projet AMO pour le Cerema.
    Retrouvez mes articles sur PHP et Symfony

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

Discussions similaires

  1. Incompréhension dans le résultat d'une requète
    Par awalter1 dans le forum SQL
    Réponses: 7
    Dernier message: 02/02/2013, 17h55
  2. Erreur incompréhensible avec une condition if et une requête SQL
    Par Francky44003 dans le forum Bases de données
    Réponses: 6
    Dernier message: 16/04/2011, 17h09
  3. Incompréhension sur une requête
    Par SoaB dans le forum Développement
    Réponses: 23
    Dernier message: 15/03/2011, 05h28
  4. Echec incompréhensible d'une requête SQL
    Par laurentSc dans le forum Langage
    Réponses: 2
    Dernier message: 11/02/2010, 00h47
  5. [WD14] Problème incompréhensible sur une requête
    Par cladoo dans le forum WinDev
    Réponses: 4
    Dernier message: 16/09/2009, 11h42

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