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

Administration Oracle Discussion :

Jeu de caractères WE8ISO8859P15


Sujet :

Administration Oracle

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2005
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 9
    Points : 7
    Points
    7
    Par défaut Jeu de caractères WE8ISO8859P15
    Bjr,

    J'ai une base en 9i / aix créee et mis en prod avec l'option character set en WE8ISO8859P1, maintenant il s'avère nécessaire de la mettre en WE8ISO8859P15 car les data qui comportent le caractère € ne sont pas réconnu. La base le reconnait comme des point d'intérogation à l'envers. Je veux que cette base puisse reconnaitre le caractère €.

    Seulement j'ai tout essaié et tout (presque) fait mais voici l'erreur qu'il me genère :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SQL> alter database character set WE8ISO8859P15;
    alter database character set WE8ISO8859P15
    ERROR at line 1:
    ORA-12712: new character set must be a superset of old character set.
    J'ai bien peur de recreer la base et refaire un export/import. Est-ce ça l'ultim solution ?
    Est-ce qu'on peut pas changer ceci WE8ISO8859P1 en WE8ISO8859P15 ?

    Merci

  2. #2
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    Bonjour,
    Essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQL> alter database character set WE8MSWIN1252 ;

  3. #3
    Futur Membre du Club
    Inscrit en
    Février 2005
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 9
    Points : 7
    Points
    7
    Par défaut set WE8MSWIN1252
    Je vais essayé, mais est-ce que ce jeu prend le caractère € en compte.
    Aussi, pour l'europe oracle recommande celui-ci WE8ISO8859P15.

    Justement, ça correspond à quoi ce character set (WE8MSWIN1252).

    Merci pour la précision.

  4. #4
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    1. Tu ne peut pas convertir WE8ISO8859P1 en WE8ISO8859P15 avec la commande ALTER DATABASE, dans ce cas tu est obligé de faire imp/exp

    2. Pour WE8MSWIN1252 c'est le l'ultra de WE8ISO8859P1 ils ont presque la même structure, ce qui est interssant dans WE8MSWIN1252 c'est l'utilisation du symbol Euro.

  5. #5
    Futur Membre du Club
    Inscrit en
    Février 2005
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 9
    Points : 7
    Points
    7
    Par défaut set WE8MSWIN1252
    Merci pour cela, mais je suis sous unix aix, ce comme ci ce jeu est pour windons. Pardon, je peux me tromper....

    Comprenez, comme je suis en prod j'aimerai être sûr...

  6. #6
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    Tu utilise quoi comme client oracle ?

  7. #7
    Futur Membre du Club
    Inscrit en
    Février 2005
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Je suis dans un environnment hétérogène, donc j'ai des windows (toad), linux et même d'autres serveurs aix.

    Merci

  8. #8
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    Pour moi tu peut utiliser WE8MSWIN1252 car il est presque pareil que WE8ISO8859P1

  9. #9
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    pas exactement pareil.... ;-)
    Les 3 jeux sont des jeux ISO 8bits.

    Le P1 est un jeu qui ne comporte pas le symbole euro mais dans lequel, parmi les 256 possibilités de caractères, il y a des codes non utilisés.
    Le P15 est un dérivé du P1 et afin de se garder la marge du P1, il a été décidé de supprimer certains caractères "inutiles" [comme le ¤ -Alt Gr + $- par exemple] pour les remplacer au profit de nouveaux caractères, tels que l'€.
    Le 1252, comme son nom ne l'indique pas, n'est pas réservé aux plateformes MS, mais c'est juste historique. Par ailleurs, à la différence du P15, il utilise les trous laissés libres en P1. Il contient donc tous les caractères du P1 et du P15 réunis.

    le P15 est donc à abandonner au profit du 1252 sans aucun regrets ! ;-)

  10. #10
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    J'ai dit presque.

    un ALTER DATABASE ca suffit pour WE8MSWIN1252 (quelques secondes)
    Ce qui n'est pas pour WE8ISO8859P15.

  11. #11
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    Citation Envoyé par bouyao
    1. Tu ne peut pas convertir WE8ISO8859P1 en WE8ISO8859P15 avec la commande ALTER DATABASE, dans ce cas tu est obligé de faire imp/exp
    Il me semble que les jeux sont compatibles (P15 inclut P1) la recréation des control files doit donc suffire

  12. #12
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    C'est vrai, il y'a d'autres méthodes pour convertir P1 en P15 en utilisant
    csscan.

    entre P1 et P15


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
    SQL> set serveroutput on
    SQL> declare
      2    i number;
      3  begin
      4    for i in 0..255 loop
      5      declare
      6          ch varchar2(1);
      7      begin
      8          ch := chr(i);
      9          if  convert( ch, 'WE8ISO8859P1', 'WE8ISO8859P15') != ch
     10          then
     11            dbms_output.put_line('Diff '|| i);
     12          end if;
     13      end;
     14    end loop;
     15  end;
     16
     17  /
    Diff 128
    Diff 129
    Diff 130
    Diff 131
    Diff 132
    Diff 133
    Diff 134
    Diff 135
    Diff 136
    Diff 137
    Diff 138
    Diff 139
    Diff 140
    Diff 141
    Diff 142
    Diff 143
    Diff 144
    Diff 145
    Diff 146
    Diff 147
    Diff 148
    Diff 149
    Diff 150
    Diff 151
    Diff 152
    Diff 153
    Diff 154
    Diff 155
    Diff 156
    Diff 157
    Diff 158
    Diff 159
    Diff 164
    Diff 166
    Diff 168
    Diff 180
    Diff 184
    Diff 188
    Diff 189
    Diff 190
     
    ProcÚdure PL/SQL terminÚe avec succÞs.
    et entre P1 et 252
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    SQL> set serveroutput on
    SQL> declare
      2    i number;
      3  begin
      4    for i in 0..255 loop
      5      declare
      6          ch varchar2(1);
      7      begin
      8          ch := chr(i);
      9          if  convert( ch, 'WE8ISO8859P1', 'WE8MSWIN1252') != ch
     10          then
     11            dbms_output.put_line('Diff '|| i);
     12          end if;
     13      end;
     14    end loop;
     15  end;
     16  /
    Diff 128
    Diff 130
    Diff 131
    Diff 132
    Diff 133
    Diff 134
    Diff 135
    Diff 136
    Diff 137
    Diff 138
    Diff 139
    Diff 140
    Diff 142
    Diff 145
    Diff 146
    Diff 147
    Diff 148
    Diff 149
    Diff 150
    Diff 151
    Diff 152
    Diff 153
    Diff 154
    Diff 155
    Diff 156
    Diff 158
    Diff 159
     
    ProcÚdure PL/SQL terminÚe avec succÞs.
     
    SQL>

  13. #13
    Futur Membre du Club
    Inscrit en
    Juin 2008
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Je dois moi aussi passer ma base en we8iso8859p1 en we8iso8859p15 mais le problème c'est qu'entre les deux il y a quand 8 caractères du P1 qui ne sont pas repris dans le P15 (comme les caractères 1/4, 1/2...)
    Comment je fais dans ce cas là ?

  14. #14
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 87
    Points : 66
    Points
    66
    Par défaut
    Bonjour, j'ai le même souci que décrit en haut, je veux modifier le jeu de caractère de ma base oracle (peu importe la façon) afin que celle-ci prenne en compte le caractère '€'.

    J'ai donc droper ma base (après avoir fait une sauvegarde bien sur), puis créer le nouveau user.
    et j'ai essayer de passer l'alter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER DATABASE character SET WE8MSWIN1252 ;
    mais ça me sort l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ORA-12719: operation requires database is in RESTRICTED mode
    et je ne sais pas quoi faire ...

    Merci de votre aide.
    Science sans conscience ..

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 17
    Points : 14
    Points
    14
    Par défaut
    Arrêtez Oracle : SHUTDOWN IMMEDIATE
    Et un démarrage restreint : STARTUP RESTRICT

    Apres le alter idem mais avec un STARTUP et non un STARTUP RESTRICT

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Console] Police et jeu de caractères
    Par Séb. dans le forum Autres Logiciels
    Réponses: 5
    Dernier message: 18/09/2005, 15h24
  2. [XSL] Transformation xsl et jeu de caractères cyrillique
    Par Maximil ian dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 01/09/2005, 11h41
  3. Jeu de caractères vietnamien
    Par franculo_caoulene dans le forum Installation
    Réponses: 5
    Dernier message: 01/09/2005, 10h32
  4. [SQL2K]URGENT: récupérer jeu de caractères et ordre de tri ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 26/04/2005, 11h43
  5. Jeu de caractères
    Par webshell dans le forum Installation
    Réponses: 2
    Dernier message: 23/05/2004, 09h38

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