Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/04/2008, 18h41   #1
Membre chevronné
 
Avatar de shaun_the_sheep
 
Homme
Chef de projet NTIC
Inscription : octobre 2004
Messages : 1 149
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Chef de projet NTIC
Secteur : Enseignement

Informations forums :
Inscription : octobre 2004
Messages : 1 149
Points : 605
Points : 605
Par défaut [Oracle 10G - Accent] Fonction de remplacement des lettres accentuées

Bonjour,

existe t'il une fonction qui me permettrait de remplacer les lettres accentués d'une chaine par son equivalent sans accent.

J'ai bien la solution replaceAll mais cela est un peu long

Merci
shaun_the_sheep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/04/2008, 19h00   #2
Rédacteur
 
Homme Salim
Développeur et DBA Oracle
Inscription : octobre 2006
Messages : 872
Détails du profil
Informations personnelles :
Nom : Homme Salim
Localisation : Canada

Informations professionnelles :
Activité : Développeur et DBA Oracle

Informations forums :
Inscription : octobre 2006
Messages : 872
Points : 1 100
Points : 1 100
Salut,

dans une requête tu peux utiliser translate
Code :
1
2
3
 
SELECT TRANSLATE ('générale', 'éèà', 'eea')
  FROM DUAL
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2008, 08h24   #3
Membre chevronné
 
Avatar de shaun_the_sheep
 
Homme
Chef de projet NTIC
Inscription : octobre 2004
Messages : 1 149
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Chef de projet NTIC
Secteur : Enseignement

Informations forums :
Inscription : octobre 2004
Messages : 1 149
Points : 605
Points : 605
Merci .

Suite à cela j'ai fais une petite fonction. Cela peut toujours servir à qelqu'un.

Citation:
Create or replace function sansaccent( machaine IN VARCHAR2
) return varchar2
IS
/* Variables */
rchaine VARCHAR2(1000);

/* Corps*/
BEGIN

rchaine:=UPPER(TRIM(machaine));
rchaine:=REPLACE(rchaine,' ','-');
rchaine:=REPLACE(rchaine,'.','');
rchaine:=REPLACE(rchaine,'''','-');
rchaine:=REPLACE(rchaine,'','');

rchaine:=Translate(rchaine,'ÀÁÂÃÄÅÆ','AAAAAAA');
rchaine:=Translate(rchaine,'Ç','C');
rchaine:=Translate(rchaine,'Ç','C');
rchaine:=Translate(rchaine,'ÈÉÊË','EEEE');
rchaine:=Translate(rchaine,'ÌÍÎÏ','IIII');
rchaine:=Translate(rchaine,'Ñ','N');
rchaine:=Translate(rchaine,'ÒÓÔÕÖØ','OOOOOO');
rchaine:=Translate(rchaine,'ÙÚÛÜ','UUUU');
rchaine:=Translate(rchaine,'ÝY','YY');

return rchaine;

END;
/
shaun_the_sheep est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h04.


 
 
 
 
Partenaires

Hébergement Web