Oracle - Echappement de caractères spéciaux

Dernière mise à jour le 3 novembre 2009 à 13:01 par marlalapocket
Publié par wjaouadi

Pour certaines requêtes SQL, nous avons besoin de rechercher des chaînes de caractères contenant des caractères spéciaux tels que '%'
Dans l'exemple suivant, qui est faux, le besoin est de trouver les enregistrements contenant au milieu le caractère '%':
SELECT * 
FROM table 
WHERE champs LIKE '%%%';


Pour ce faire il faut savoir comment échapper (ou déspécialiser) les caractères spéciaux. Il faut commencer par donner une valeur au paramètre SQL ESCAPE (paramètre d'échapper les caractères) par exemple '^' :
SQL>SET ESCAPE ^


A partir de ce moment, le caractère '^' pourra servir à dé-spécialiser les caractères spéciaux. Pour reprendre notre exemple de façon correcte :
SELECT * 
FROM table 
WHERE champs LIKE '%^%%';
Meilleures réponses pour « Oracle Echappement de caractères spéciaux » dans :
Caractères spéciaux HTML Voir Codage des caractères spéciaux Le standard HTML demande de respecter le codage des caractères ASCII 7 bits, c'est-à-dire que les caractères accentués ne sont pas autorisés. Il faut pour cela utiliser un codage particulier. Pour...
[CCM] Utiliser des caractères spéciaux VoirVous pouvez utiliser des caractères spéciaux dans vos messages sur les forums de CCM. Vous pouvez: Soit utiliser la table de caractères Windows (charmap.exe) et copier-coller les caractères dans le message. Soit utiliser les entités...
Utiliser des accents et autres caractères spéciaux VoirDans la plupart des langages de programmation, on ne peut utiliser directement les accents et autres caractères non-anglosaxon. La solution est l'unicode, une sorte de code universel. Par exemple pour afficher la chaine de caractères : " là, ça...
Supprimer un fichier contenant des caractères spéciaux VoirSi le fichier que vous souhaitez supprimer commence par un caractère "moins" (-), la commande rm risque de prendre la suite comme une option de la ligne de commande. Pour y remédier, une première solution consiste à faire précéder le nom du...