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

Administration Oracle Discussion :

Like Case Insensitive


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2004
    Messages
    178
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 178
    Par défaut Like Case Insensitive
    Bonjour je viens de recherches sur le forum des solutions a mon problème mais aucune ne convient complètement.
    En fait j'aimerais pouvoir effectuer une requete avec un like sans que se soit sensible a la casse.
    Je vous donne un exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select * from b_person where per_nom like 'locataire%'
    cela ne me retourne rien.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select * from b_person where per_nom like 'Locataire%'
    cela me retourne bien les enregistrements voulu.
    Existe-il un moyen de faire en sorte que pour un like la casse ne soit pas prise en compte?
    J'ai trouver des solutions mais elles ne fonctionne qu'avec le =, sinon pour les autres je suis obliger de modifier toutes mes requêtes avec un UPPER(),or j'aimerais éviter de reprendre toutes mes requêtes.
    Du coup je n'ai pas trouver de solution. Je suis en version d'oracle 9i.
    Si quelqu'un a une idée ou une piste, merci d'avance.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 207
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alter session set NLS_COMP=LINGUISTIC;
    L'avantage, c'est que le alter session peut être lancé via un trigger de type after logon, ou au niveau applicatif.

    Petite restriction, la valeur LINGUISTIC n'existe que depuis la 10g Release 2. (désolé , j'avais pas lu le post en entier, et donc tu es en 9...)

    Laurent

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2004
    Messages
    178
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 178
    Par défaut
    oui j'avais vu ça mais malheureusement je suis en version 9i, il n'existe pas un équivalent pour cette version?

  4. #4
    Membre Expert Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Par défaut
    Bonjour,

    regarde ce lien , il peut t'aider


    http://forums.oracle.com/forums/thre...53673&#1153673

    perso, je l'a testé mais avec du 11G , ca fonctionne

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 207
    Par défaut
    Bonjour,

    Ca va fonctionner mais uniquement avec critère d'égalité mais pas avec le LIKE.

    laurent

  6. #6
    Membre Expert Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Par défaut
    Citation Envoyé par lallio Voir le message
    Bonjour,

    Ca va fonctionner mais uniquement avec critère d'égalité mais pas avec le LIKE.

    laurent
    Avez vous testé , ou par oui dire


    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     
     insert into table1  values ('TOTAL');
     
    1 row created.
     
     insert into table1  values ('toto');
     
    1 row created.
     
     insert into table1  values ('tata');
     
    1 row created.
     
     insert into table1  values ('TITI');
     
    1 row created.
     insert into table1  values ('TUTU');
     
    1 row created.

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
     ALTER session SET NLS_COMP=LINGUISTIC;

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    select * from table1
      2  where col1 like 'TO%';
     
    COL1
    --------------------------------------------------------------------------------
    TOTAL
    toto

  7. #7
    Membre confirmé
    Inscrit en
    Juin 2004
    Messages
    178
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 178
    Par défaut
    oui j'avais vu cette solution, par contre cela fonctionne que pour les recherche avec = pas avec like,or j'aimerais éviter de modifier toutes mes requêtes.Et je trouve pas de solution

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 207
    Par défaut
    C'est peut être l'occasion de passer sous ORACLE 10....

Discussions similaires

  1. Comment filtrer avec une case insensitive ?
    Par savoir dans le forum Débuter
    Réponses: 2
    Dernier message: 06/09/2007, 12h09
  2. [Hibernate] Requête avec un LIKE %% case insensitive
    Par n@n¤u dans le forum Hibernate
    Réponses: 4
    Dernier message: 21/06/2006, 18h27
  3. Réponses: 2
    Dernier message: 15/05/2006, 15h08
  4. Case insensitive methode contains()
    Par mihaestii dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 12/11/2005, 12h25
  5. equivalent de l'operateur like mais insensitive
    Par fxgamoy dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 21/06/2005, 11h23

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