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 :

migration oracle9 en UTF8


Sujet :

Administration Oracle

  1. #21
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 115
    Points : 130
    Points
    130
    Par défaut
    Citation Envoyé par ljoly
    Bonjour,

    je migre un base 8.1.7.4 en WE8ISO8859P1 vers une base 9.2.0.8 en UTF8.
    Il me semble que UTF8 est inclus dans WE8ISO8859P1, et s'il y a des caractères au dela de UTF8, ca va être chaud...
    Le mieux c'est de faire croire que c'est la même police afin qu'Oracle ne fasse pas de convertion.
    Et là je sais plus mais mettre le NLS_LANG à UTF8 à l'export ??
    Sinon, je me souviens qu'on avait trifouillé l'entête de l'export pour faire croire à l'import que c'est de l'UTF8...(script en C pour changer le premier mot)
    A+

  2. #22
    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
    Citation Envoyé par louping
    Il me semble que UTF8 est inclus dans WE8ISO8859P1
    Non.

    L'UTF est un unicode => il peut stocker tous les caractères, y compris le martien du sud, si nécessaire mais cela implique que la longueur d'encodage est variable

    les WE8ISO... sont des jeux 8 bits iso-longueurs d'encodage => 256 caractères max. En plus, pour les WE, on n'a retenu que les caractères de l'europe de l'ouest. Les caractères des pays baltes n'y sont pas par exemple.


    Citation Envoyé par louping
    je me souviens qu'on avait trifouillé l'entête de l'export pour faire croire à l'import que c'est de l'UTF8
    ben voyons...
    en UTF, le 1er bit de l'octet indique ou non la présence d'un octet suivant... donc on ne peut pas "faire croire", sauf à prendre de gros risques...

    il suffit de positionner le NLS_LANG sur l'OS...

  3. #23
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Il me semble que UTF8 est inclus dans WE8ISO8859P1
    Non, c'est l'inverse d'après le Globalization Guide.

    Le mieux c'est de faire croire que c'est la même police afin qu'Oracle ne fasse pas de convertion.
    Cela dépend: voir la FAQ OTN NLS_LANG à ce sujet par exemple.

    Sinon, je me souviens qu'on avait trifouillé l'entête de l'export pour faire croire à l'import que c'est de l'UTF8...(script en C pour changer le premier mot)
    Le format du fichier export n'est pas documenté et modifier directement un fichier export n'est pas supporté

  4. #24
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 115
    Points : 130
    Points
    130
    Par défaut
    Les Oracles ont parlé,

    Note 260192.1 Changing WE8ISO8859P1/ WE8ISO8859P15 or WE8MSWIN1252 to UTF8 with ALTER DATABASE CHARACTERSET

    You can't simply use "ALTER DATABASE CHARACTER SET" to go from WE8ISO8859P1 or WE8ISO8859P15 or WE8MSWIN1252 to (AL32)UTF8 because (AL32)UTF8 is not a binary superset of any of these character sets.

  5. #25
    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
    Oui, c'est exactement ce qu'on disait : you can't !

    Après, ne pas confondre "superset" et "caractères gérés".

    Un superset, c'est un jeu plus complet mais dont les codes des caractères communs sont identiques (par exemple WE8ISO8859P1 et WE8ISO8859P15)

    la liste des caractères gérés peut être commune à 90% mais si les caractères communs n'ont pas le même codage, on dit qu'ils n'ont pas le même superset et cela complique les procédure de migration, mais cela n'influe pas (trop) sur les communications Client/Serveur

Discussions similaires

  1. Migration ISO8859_1 -> UTF8
    Par Reisubar dans le forum Administration
    Réponses: 2
    Dernier message: 21/07/2009, 18h16
  2. Migration ISO8859 UTF8 dev->prod
    Par deromemont dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 16/01/2008, 20h44
  3. Migration de oracle9 vers oracle10g
    Par ali.tn dans le forum Oracle
    Réponses: 5
    Dernier message: 19/11/2007, 09h43
  4. Réponses: 15
    Dernier message: 21/03/2006, 16h13
  5. Migration Oracle 8i WE8DEC => Oracle 9i UTF8
    Par stawen dans le forum Oracle
    Réponses: 3
    Dernier message: 06/01/2005, 10h44

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