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

SQL Procédural MySQL Discussion :

casse insensible, blob et binary


Sujet :

SQL Procédural MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de arcane
    Inscrit en
    Avril 2003
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 313
    Par défaut casse insensible, blob et binary
    Bonjour,

    je n'arrive pas à faire une recherche insensible à la casse, sur un champ blob binaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    1 : 
    AND LCASE(T.description) LIKE LCASE('%pour%')
     
    2 : 
    AND UCASE(T.description) LIKE UCASE('%POUR%')
    Dans ma description, j'ai des Pour, pour, POUR.
    j'ai l'impression que LCASE(T.description) ne transforme pas la donnée, mais que LCASE('%pour%') le fait bien.
    idem pour UCASE.
    j'ai aussi testé UPPER et LOWER, rien n'y fait.
    LCASE me donne tous les pour
    UCASE me donne tous les POUR
    LOWER me donne tous les pour
    UPPER me donne tous les POUR.
    Je n'ai jamais Pour.
    j'ai aussi testé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AND T.description LIKE CONVERT( _utf8 '%$description%' USING latin1 )
    mais je ne vois pas bien à quoi ca sert, et ca ne fonctionne pas.

    cela viendrait il du champ blob?

  2. #2
    Membre éclairé Avatar de arcane
    Inscrit en
    Avril 2003
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 313
    Par défaut
    j'ai oublié : pour un champ varchar par ex., je n'ai pas besoin de mettre UPPER ou LOWER ou...
    cela fonctionne correctement juste avec LIKE '%Pour%' .

    [EDIT]
    Encore une précision : dans le champ blob, si je tape juste é, il ne me trouve rien (alors qu'il devrait).
    Pareil pour les autres accents
    [/EDIT]

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 6
    Par défaut S'il n'est pas trop tard...
    Bonjour,
    Regarde ici http://bugs.mysql.com/bug.php?id=2678

    Faire where UCASE(CONVERT(lechamps USING latin1))
    au lieu de
    UCASE(lechamps)

    Karim

Discussions similaires

  1. Réponses: 0
    Dernier message: 29/02/2008, 11h41
  2. casse insensible des noms de tables
    Par punky_brooster dans le forum Langage SQL
    Réponses: 2
    Dernier message: 30/03/2007, 15h54
  3. SQL champ texte UNIQUE insensible à la casse
    Par Mike@Nestor dans le forum Langage SQL
    Réponses: 8
    Dernier message: 17/10/2005, 08h31
  4. Recherche insensible à la casse ET insensible aux accents.
    Par Bernard Grosdoy dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 10/07/2005, 03h32
  5. Tri insensible à la casse [IB7]
    Par patquoi dans le forum Débuter
    Réponses: 4
    Dernier message: 02/06/2003, 08h56

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