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 01/02/2007, 13h14   #1
Nouveau Membre du Club
 
Inscription : avril 2005
Messages : 175
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 175
Points : 28
Points : 28
Par défaut character set et hexa

Bonjour,

existe-t-il une vue ou une table du dictionnaire Oracle qui permettrait d'éditer les caractères et leurs valeurs en hexadecimal pour chacun des jeux de caractères utilisés par une base Oracle9 ?

Merci
marti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2007, 14h20   #2
Expert Confirmé
 
Inscription : février 2006
Messages : 3 433
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 3 433
Points : 3 462
Points : 3 462
Je ne crois pas qu'il existe de vue ou de table mais on peut utiliser des fonctions SQL comme CHR ou UNISTR pour générer un caractère donné:
http://download-uk.oracle.com/docs/c...4.htm#i1000165

et la function DUMP pour afficher le codage binaire d'une colonne VARCHAR2 stockée dans la base:

http://download-uk.oracle.com/docs/c...046.htm#i77278
__________________
P. Forstmann

AskTom Forums OTN doc 8, 9, 10 et 11
pifor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2007, 15h05   #3
Nouveau Membre du Club
 
Inscription : avril 2005
Messages : 175
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 175
Points : 28
Points : 28
Oracle9 dispose beaucoup de tables de conversion entre jeux de caractère. faut donc trouver la bonne table entrée. Par exemple, pour le é, je le récupère en format hexa F4 ( ô ). Si à partir de cet exemple quelqu'un pouvait me dire quel est le jeu de caractère utilisé ?
marti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2007, 15h29   #4
Rédacteur
 
Inscription : décembre 2002
Messages : 2 397
Détails du profil
Informations personnelles :
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : décembre 2002
Messages : 2 397
Points : 3 298
Points : 3 298
Citation:
Envoyé par marti
existe-t-il une vue ou une table du dictionnaire Oracle qui permettrait d'éditer les caractères et leurs valeurs en hexadecimal pour chacun des jeux de caractères utilisés par une base Oracle9 ?
Bonjour

Je ne comprends rien à la question... Déjà, le terme "éditer" est ambigu. Pour certains, ça veut dire modifier, pour d'autres, ça veut dire imprimer.
Ensuite, pour une base Oracle donnée, il n'y a que 2 jeux de caractères : le jeu de base, et le jeu dit national (unicode).

Pouvez-vous expliquer plus clairement votre objectif fonctionnel (et non technique) ?
Pomalaix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2007, 16h02   #5
Nouveau Membre du Club
 
Inscription : avril 2005
Messages : 175
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 175
Points : 28
Points : 28
je récupère des données d'un environnement SAS sur gros système Z/OS et je les enregistre dans une base Oracle via la fonction SQL Insert. A l'affichage, j'ai des problèmes de conversion avec les caractères accentués

Par exemple, le é est en format hexa C0 dans l'environnement SAS et je récupère le é en format F4 ( ô ) dans la base Oracle. J'ai pensé qu'avec la fonction SQL Convert() je pouvais transcoder le é en format hexa E9 si je pouvais trouver le jeu de caractères en entrée adéquat avec le jeu de caractères de ma base WE8MSWIN1252.
marti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2007, 17h00   #6
Expert Confirmé
 
Inscription : février 2006
Messages : 3 433
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 3 433
Points : 3 462
Points : 3 462
Ce que vous devez trouver c'est la bonne valeur de NLS_LANG qui est une variable d'environnement (ou clé de registre sous Windows) à positionner pour que Oracle fasse la bonne conversion pour la phase de chargement pendant les INSERT:
http://fadace.developpez.com/oracle/nls/

Si le fichier a été transféré en binaire depuis Z/OS, c'est probablement de l'EBCDIC et il faut trouver le bon jeu de caractères dans cette table là:
http://download-uk.oracle.com/docs/c...a.htm#CIAJAGCB
__________________
P. Forstmann

AskTom Forums OTN doc 8, 9, 10 et 11
pifor est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h38.


 
 
 
 
Partenaires

Hébergement Web