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

Convertir caractères avec accent en caractères sans accents en postgresql


Sujet :

Requêtes PostgreSQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 38
    Par défaut Convertir caractères avec accent en caractères sans accents en postgresql
    Bonjour,
    Je voudrais savoir si il y a une fonction ou un autre moyen quelconque en postgresql qui permette de transformer une chaine contenant des caractères avec accents en caractères sans accents?
    Exemple : que 'Sébastien' devienne 'Sebastien'

    Il faudrait que ça prenne tout les cas de figure. Genre que les 'â', 'ä', 'à',... deviennent des 'a'.

    Merci

  2. #2
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2012
    Messages : 16
    Par défaut
    perso, j'utilise une table de conversion et une procstock sql pour remplacer une bonne palette de caractères accentués par leur équivalence non-accentuée.

    Après, c'est une solution maison car il y a des spécificités liées à l'environnement.

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 38
    Par défaut
    Aïe donc pas de solutions toute simple comme une bonne petite fonction qui fasse la transformation?
    Un peu comme la fonction upper qui transforme tout les caractères en majuscules.

  4. #4
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2012
    Messages : 16
    Par défaut
    Pas trouvé à l'époque où, moi aussi, je cherchais cette information, du coup je m'étais fait une table de correspondance ...

    Après, je dois pouvoir te fournir un morceau de code si tu veux mais faudra l'adapter à tes besoins.

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 38
    Par défaut
    Si ça t'es possible ça serait sympa ouais

    En gros mes besoins :
    Je veut comparer une chaine saisie dans une application JAVA à des chaines de caractères stockées dans une base de données postgresql.

    J'envoie une requete hql qui contient une clause du genre :
    ...upper('chaine saisie') = upper(table.colonne)...

    Ainsi la comparaison ignore la casse mais pas les accents.

  6. #6
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2012
    Messages : 16
    Par défaut
    Voici le code en pièce jointe, a toi de l'adapter pour tes besoins.

    Attention, le code est pour postgres 9.X ...

    et un exemple de fonctionnement des 2 procédures fournies :

    Un texte en français :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Moscou a joué un grand rôle dans l''histoire de la Russie : elle a été la capitale du Grand-duché de Moscou, puis de l''Empire russe avant que Pierre le Grand ne transfère la capitale dans la nouvelle ville de Saint-Pétersbourg puis est redevenue capitale en 1918 de la jeune république socialiste soviétique russe puis de l''Union des républiques socialistes soviétiques. Moscou est également connue pour son patrimoine architectural : le Kremlin avec ses palais et églises, la cathédrale Saint-Basile sur la place Rouge, la cathédrale du Christ Sauveur ainsi que les Sept Sœurs staliniennes. Le monastère Danilov à Moscou est aussi le siège du patriarche de l''Église orthodoxe russe. Le noyau historique de la ville se situe sur la colline qui domine la rive gauche de la Moskova, à l''endroit où se trouvent aujourd''hui le Kremlin et la place Rouge.
    Après appel sql de "select public.normalize(le_texte_a_convertir_ici);" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "moscou a joue un grand role dans l histoire de la russie elle a ete la capitale du grand duche de moscou puis de l empire russe avant que pierre le grand ne transfere la capitale dans la nouvelle ville de saint petersbourg puis est redevenue capitale en 1918 de la jeune republique socialiste sovietique russe puis de l union des republiques socialistes sovietiques moscou est egalement connue pour son patrimoine architectural le kremlin avec ses palais et eglises la cathedrale saint basile sur la place rouge la cathedrale du christ sauveur ainsi que les sept soeurs staliniennes le monastere danilov a moscou est aussi le siege du patriarche de l eglise orthodoxe russe le noyau historique de la ville se situe sur la colline qui domine la rive gauche de la moskova a l endroit ou se trouvent aujourd hui le kremlin et la place rouge."

    Un texte en polonais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Moskwa jest siedziba najwyzszych wladz panstwowych Rosji w tym: prezydenta, parlamentu (Dumy Panstwowej i Rady Federacji) oraz rzadu. W przeszlosci miasto bylo stolica: Ksiestwa Moskiewskiego (1213-1328), Wielkiego Ksiestwa Moskiewskiego (1328-1547), Carstwa Rosyjskiego (1547-1712), Rosji Radzieckiej (1917-1922) i Zwiazku Radzieckiego (1922-1991). Moskwa jest takze stolica Rosyjskiego Kosciola Prawoslawnego. Znajduje sie tu ponad 600 swiatyn róznych wyznan, w tym Cerkiew Chrystusa Zbawiciela – najwieksza na swiecie cerkiew prawoslawna, a takze Monaster Danilowski – siedziba patriarchy Moskwy i calej Rusi. Podczas II wojny swiatowej Moskwa jako jedyna stolica europejska odparla ataki niemieckie uzyskujac tytul "miasta-bohatera".
    Après appel sql de "select public.normalize(le_texte_a_convertir_ici);" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "moskwa jest siedziba najwyzszych wladz panstwowych rosji w tym prezydenta parlamentu dumy panstwowej i rady federacji oraz rzadu w przeszlosci miasto bylo stolica ksiestwa moskiewskiego 1213 1328 wielkiego ksiestwa moskiewskiego 1328 1547 carstwa rosyjskiego 1547 1712 rosji radzieckiej 1917 1922 i zwiazku radzieckiego 1922 1991 moskwa jest takze stolica rosyjskiego kosciola prawoslawnego znajduje sie tu ponad 600 swiatyn roznych wyznan w tym cerkiew chrystusa zbawiciela – najwieksza na swiecie cerkiew prawoslawna a takze monaster danilowski – siedziba patriarchy moskwy i calej rusi podczas ii wojny swiatowej moskwa jako jedyna stolica europejska odparla ataki niemieckie uzyskujac tytul miasta bohatera "

    J'espère que cela va t'aider.

    Cordialement,

    Camaie
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/03/2015, 17h07
  2. Réponses: 3
    Dernier message: 04/05/2014, 14h27
  3. Problème de caractères avec des accents
    Par xianxian620 dans le forum Requêtes
    Réponses: 5
    Dernier message: 13/05/2008, 17h53
  4. Réponses: 4
    Dernier message: 26/11/2007, 12h25
  5. [SQL]Caractères avec accents
    Par New dans le forum Oracle
    Réponses: 1
    Dernier message: 24/10/2005, 09h49

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