Affichage des caractères arabes sous oracle

Fermé
naddou22 - 1 févr. 2010 à 19:39
 Rafik - 29 mars 2010 à 16:48
Bonjour,
j'ai lu les différents messages concernant l'affichage des caractères arabes sous oracle mais j'arrive pas a les appliquer.J'ai essayé de modifier le nls_lang par ARABIC_TUNISIA.AR8MSWIN1256 mais rien ne change toujours les caractères s'affichent en ?????
Y' a t'il quelqu'un qui peut m'aider SVP.

4 réponses

Salut

le nls_lang que tu modifies n'est valable que dans la session. ça n'a pas d'impact sur la base qui n'est pas prévue pour travailler avec ton character set.
le character set se choisit malheureusement au moment de la création de la base (et je cros pas qu'on puisse le changer ultérieurement).
Si ta base est toute nouvelle, tu peux la supprimer et en recréer une avec un joli create database.
Si elle est ancienne, tu fais un export et après tu fais comme si elle était toute nouvelle :-(
0
Salut
Merci fiu pour ton aide
je viens d'installer ma base elle est nouvelle.vous voulez dire quoi par tu peux la supprimer et en recréer une avec un joli create database.
Pouvez vous SVP m'expliquer plus
0
re

le joli est là car la commande create database n'est pas anodine : elle n'intervient qu'une seule fois dans la vide de la base. et de sa formulation dépend en grande partie son fonctionnement. tu as un lien sous 'create database' qui te donne la syntaxe du create.
et malheureusement, tu vas devoir t'en servir car l'assistant qui a créé ta base n'a pas prévu une création dans un jeu autre que les jeux occidentaux traditionnels.
tu vas donc devoir apprendre cette commande, quels sont ses prérequis et comment la faire fonctionner puis comment vérifier qu'elle ait bien fonctionné. Tu vas devoir faire plusieurs tentatives, essuyer plusieurs échecs. Ça reste malheureusement la seule manière d'apprendre.

Tout se fait depuis SQL*Plus, de préférence avec des scripts. Et pour être sûr de bien consigner quelles commandes engendrent quels effets, je ne saurais que trop te conseiller d'utiliser set echo on en début de script pour afficher la commande qui va être exécutée et d'utiliser spool nom_d_un_fichier_trace en début de script et spool off en fin de script pour stocker dans nom_d_un_fichier_trace tous les affichages de SQL*Plus

de mémoire (mais ça fait un bail que j'en ai pas fait), je faisais
create database orcl
character set WE8ISO8859P15
datafile 'c:\orant\database\system.ora' size 100m
logfile 'c:\orant\database\log1.ora' size 200k
, 'c:\orant\database\log2.ora' size 200k;

pour créer une instance nommée ORCL
avec un tablespace SYSTEM reposant sur un fichier de 100M
et deux redolog de 200K chacun.
si l'on se réfère à la doc, il faudrait rajouter
user sys identified by change_on_install -- pour creer sys/change_on_install
user system identified by manager -- pour creer system/manager
et d'autres bricoles que je maîtrise pas.
0
Salut
de toute façon merci pour votre effort avec moi.je vais essayer et vous tiendrai au courant
Merci
0
Bonjour,
Dans ta base des registres (exec, regedit), tu doit vérifier la valeur chaine NLS_LANG dans le clè Oracle: tu peux essayer celle-ci FRENCH_FRANCE.WE8ISO8859P1
pour avoir une interface en français capable de lire des données en arabe.
pour moi ça marche sans pb.
Bon devloppement...
0