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

Oracle Discussion :

[Oracle9i] modifier le character set d'une bd? [FAQ]


Sujet :

Oracle

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2003
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 112
    Points : 52
    Points
    52
    Par défaut [Oracle9i] modifier le character set d'une bd?
    Salut,
    je cherche a changer le character set d'une base qui a été créé en WE8MSWIN1252

    Je voudrais la modifier en la changent en UTF8 (ISO-8859)

    est ce possible et comment

    (j'aimerai éviter de recreer une bd)

    MErci d'avance

  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
    1. Vérifier le parametre parallel_server dans le fichier init.ora est false (<> ALL)

    2. faite un backup de la base (question de securité)

    3. lancer les commandes suivantes sous sqlplus comme sysdba
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    STARTUP MOUNT;       
    ALTER SYSTEM ENABLE RESTRICTED SESSION;       
    ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;       
    ALTER SYSTEM SET AQ_TM_PROCESSES=0;       
    ALTER DATABASE OPEN;       
    ALTER DATABASE CHARACTER SET <new_character_set>;   
    SHUTDOWN IMMEDIATE;   
    STARTUP RESTRICT;
    le ALTER DATABASE dure quelque minutes

    3. restaurer le parametre parallel_server dans le init.ora

    4. lancer la commande suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SHUTDOWN IMMEDIATE;  
    STARTUP;

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2003
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 112
    Points : 52
    Points
    52
    Par défaut
    merci
    je test ca de suite!!!

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    attention, ceci entend que les jeux sont compatibles

    Voila ce que j'avais écrit à ce sujet :

    on peut changer le character set dans toutes les versions bien sûr mais attention à la compatibilité du nouveau.

    Pour vérifier que la conversion est possible, commencez par utiliser le Character Set Scanner : http://www.oracle.com/technology//software/tech/globalization/index.html

    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    csscan FULL=Y FROMCHAR=WE8ISO8859P1 TOCHAR=WE8ISO8859P15 LOG=P1TOWE8ISO8859P15 CAPTURE=Y ARRAY=1000000 PROCESS=2
    Ensuite la commande suivante suffit :

    ALTER DATABASE CHARACTER SET <xxx>;
    Pour les conversions de A vers B dans la liste suivante :

    8.1.6 Subset/Superset Pairs
    ===========================
    A. Current Char set B. New Char set (Superset of A.)
    ------------------- --------------------------------
    US7ASCII WE8DEC
    US7ASCII US8PC437
    US7ASCII WE8PC850
    US7ASCII IN8ISCII
    US7ASCII WE8PC858
    US7ASCII WE8ISO8859P1
    US7ASCII EE8ISO8859P2
    US7ASCII SE8ISO8859P3
    US7ASCII NEE8ISO8859P4
    US7ASCII CL8ISO8859P5
    US7ASCII AR8ISO8859P6
    US7ASCII EL8ISO8859P7
    US7ASCII IW8ISO8859P8
    US7ASCII WE8ISO8859P9
    US7ASCII NE8ISO8859P10
    US7ASCII TH8TISASCII
    US7ASCII BN8BSCII
    US7ASCII VN8VN3
    US7ASCII VN8MSWIN1258
    US7ASCII WE8ISO8859P15
    US7ASCII WE8NEXTSTEP
    US7ASCII AR8ASMO708PLUS
    US7ASCII EL8DEC
    US7ASCII TR8DEC
    US7ASCII LA8PASSPORT
    US7ASCII BG8PC437S
    US7ASCII EE8PC852
    US7ASCII RU8PC866
    US7ASCII RU8BESTA
    US7ASCII IW8PC1507
    US7ASCII RU8PC855
    US7ASCII TR8PC857
    US7ASCII CL8MACCYRILLICS
    US7ASCII WE8PC860
    US7ASCII IS8PC861
    US7ASCII EE8MACCES
    US7ASCII EE8MACCROATIANS
    US7ASCII TR8MACTURKISHS
    US7ASCII EL8MACGREEKS
    US7ASCII IW8MACHEBREWS
    US7ASCII EE8MSWIN1250
    US7ASCII CL8MSWIN1251
    US7ASCII ET8MSWIN923
    US7ASCII BG8MSWIN
    US7ASCII EL8MSWIN1253
    US7ASCII IW8MSWIN1255
    US7ASCII LT8MSWIN921
    US7ASCII TR8MSWIN1254
    US7ASCII WE8MSWIN1252
    US7ASCII BLT8MSWIN1257
    US7ASCII N8PC865
    US7ASCII BLT8CP921
    US7ASCII LV8PC1117
    US7ASCII LV8PC8LR
    US7ASCII LV8RST104090
    US7ASCII CL8KOI8R
    US7ASCII BLT8PC775
    US7ASCII WE8DG
    US7ASCII WE8NCR4970
    US7ASCII WE8ROMAN8
    US7ASCII WE8MACROMAN8S
    US7ASCII TH8MACTHAIS
    US7ASCII HU8CWI2
    US7ASCII EL8PC437S
    US7ASCII LT8PC772
    US7ASCII LT8PC774
    US7ASCII EL8PC869
    US7ASCII EL8PC851
    US7ASCII CDN8PC863
    US7ASCII HU8ABMOD
    US7ASCII AR8ASMO8X
    US7ASCII AR8NAFITHA711T
    US7ASCII AR8SAKHR707T
    US7ASCII AR8MUSSAD768T
    US7ASCII AR8ADOS710T
    US7ASCII AR8ADOS720T
    US7ASCII AR8APTEC715T
    US7ASCII AR8NAFITHA721T
    US7ASCII AR8HPARABIC8T
    US7ASCII AR8NAFITHA711
    US7ASCII AR8SAKHR707
    US7ASCII AR8MUSSAD768
    US7ASCII AR8ADOS710
    US7ASCII AR8ADOS720
    US7ASCII AR8APTEC715
    US7ASCII AR8MSAWIN
    US7ASCII AR8NAFITHA721
    US7ASCII AR8SAKHR706
    US7ASCII AR8ARABICMACS
    US7ASCII LA8ISO6937
    US7ASCII JA16VMS
    US7ASCII JA16EUC
    US7ASCII JA16SJIS
    US7ASCII KO16KSC5601
    US7ASCII KO16KSCCS
    US7ASCII KO16MSWIN949
    US7ASCII ZHS16CGB231280
    US7ASCII ZHS16GBK
    US7ASCII ZHT32EUC
    US7ASCII ZHT32SOPS
    US7ASCII ZHT16DBT
    US7ASCII ZHT32TRIS
    US7ASCII ZHT16BIG5
    US7ASCII ZHT16CCDC
    US7ASCII ZHT16MSWIN950
    US7ASCII AL24UTFFSS
    US7ASCII UTF8
    US7ASCII JA16TSTSET2
    US7ASCII JA16TSTSET
    8.1.7 Additions
    ===============
    US7ASCII ZHT16HKSCS
    US7ASCII KO16TSTSET
    WE8DEC TR8DEC
    WE8DEC WE8NCR4970
    WE8PC850 WE8PC858
    D7DEC D7SIEMENS9780X
    I7DEC I7SIEMENS9780X
    WE8ISO8859P1 WE8MSWIN1252
    AR8ISO8859P6 AR8ASMO708PLUS
    AR8ISO8859P6 AR8ASMO8X
    IW8EBCDIC424 IW8EBCDIC1086
    IW8EBCDIC1086 IW8EBCDIC424
    LV8PC8LR LV8RST104090
    DK7SIEMENS9780X N7SIEMENS9780X
    N7SIEMENS9780X DK7SIEMENS9780X
    I7SIEMENS9780X I7DEC
    D7SIEMENS9780X D7DEC
    WE8NCR4970 WE8DEC
    WE8NCR4970 TR8DEC
    AR8SAKHR707T AR8SAKHR707
    AR8MUSSAD768T AR8MUSSAD768
    AR8ADOS720T AR8ADOS720
    AR8NAFITHA711 AR8NAFITHA711T
    AR8SAKHR707 AR8SAKHR707T
    AR8MUSSAD768 AR8MUSSAD768T
    AR8ADOS710 AR8ADOS710T
    AR8ADOS720 AR8ADOS720T
    AR8APTEC715 AR8APTEC715T
    AR8NAFITHA721 AR8NAFITHA721T
    AR8ARABICMAC AR8ARABICMACT
    AR8ARABICMACT AR8ARABICMAC
    KO16KSC5601 KO16MSWIN949
    WE16DECTST2 WE16DECTST
    WE16DECTST WE16DECTST2
    9.0.1 Additions
    ===============
    US7ASCII BLT8ISO8859P13
    US7ASCII CEL8ISO8859P14
    US7ASCII CL8ISOIR111
    US7ASCII CL8KOI8U
    US7ASCII AL32UTF8
    BLT8CP921 BLT8ISO8859P13
    US7ASCII AR8MSWIN1256
    UTF8 AL32UTF8 (added in patchset 9.0.1.2)
    Character Set Subset/Superset Pairs Obsolete from 9.0.1
    =======================================================
    US7ASCII AR8MSAWIN
    AR8ARABICMAC AR8ARABICMACT
    9.2.0 Additions
    ===============
    US7ASCII JA16EUCTILDE
    US7ASCII JA16SJISTILDE
    US7ASCII ZHS32GB18030
    US7ASCII ZHT32EUCTST
    WE8ISO8859P9 TR8MSWIN1254
    LT8MSWIN921 BLT8ISO8859P13
    LT8MSWIN921 BLT8CP921
    BLT8CP921 LT8MSWIN921
    AR8ARABICMAC AR8ARABICMACT
    ZHT32EUC ZHT32EUCTST
    UTF8 AL32UTF8
    Character Set Subset/Superset Pairs Obsolete from 9.2.0
    =======================================================
    LV8PC8LR LV8RST104090

    Sinon, il faut faire un export full de la base que vous réimportez dans une base avec le character set souhaité (ou alors vous recréez les control files de la base courante pour modifier le character set cf. l'article sur la copie de base).
    L'import détectera alors le changement et convertira les données.

    Attention, si la modification n'est pas compatible vous risquez de perdre des données, soyez donc très prudent.

    ce serait peut-être pas mal que je l'intégre à la FAQ

  5. #5
    Membre habitué
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2004
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 319
    Points : 144
    Points
    144
    Par défaut Re: [Oracle9i] modifier le character set d'une bd?
    Citation Envoyé par osmoze
    Salut,
    je cherche a changer le character set d'une base qui a été créé en WE8MSWIN1252

    Je voudrais la modifier en la changent en UTF8 (ISO-8859)

    est ce possible et comment

    (j'aimerai éviter de recreer une bd)

    MErci d'avance
    Si vous avez un acces à METALINK, la note 260192.1 correspond à ce que vous voulez faire. Bonne Lecture

  6. #6
    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 orafrance
    ce serait peut-être pas mal que je l'intégre à la FAQ
    +1

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    Le problème c'est qu'il faudrait tester la procédure que je propose et que je ne peux pas le faire

  8. #8
    Membre habitué
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2004
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 319
    Points : 144
    Points
    144
    Par défaut [FAQ][Oracle9i] modifier le character set d'une BD?
    Citation Envoyé par orafrance
    Le problème c'est qu'il faudrait tester la procédure que je propose et que je ne peux pas le faire
    Ne serait-il pas important de parler du National Character Set paramètre independant depuis la version9i
    pour info:
    The National Character set (NLS_NCHAR_CHARACTERSET) is a character set
    which is defined in addition to the (normal) database character set and
    is used for data stored in NCHAR, NVARCHAR2 and NCLOB columns.
    les valeurs possibles:
    pour info:
    From 9i onwards the NLS_NCHAR_CHARACTERSET can have only 2 values:
    UTF8 or AL16UTF16 who are Unicode charactersets.
    Por info:
    Lors d'une migration d'une base en 8i avec client en 8 vers une base en 9i le NCHAR doit être positionné en UTF8
    Sinon le client en 8 ne pourra se connecter .

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    Exact, merci pour ces précisions

Discussions similaires

  1. [Character SET] Modifier un caractére
    Par ducho dans le forum Oracle
    Réponses: 5
    Dernier message: 24/03/2014, 17h50
  2. Changer le character set d'une instance
    Par Antoun dans le forum Administration
    Réponses: 3
    Dernier message: 11/04/2012, 19h34
  3. connaitre le character set d'une base
    Par slausseur dans le forum Administration
    Réponses: 4
    Dernier message: 17/09/2007, 12h30
  4. Changer le character set d'une base
    Par Rakken dans le forum Oracle
    Réponses: 2
    Dernier message: 21/11/2006, 18h21
  5. [9i] Modifier character set d'une bdd
    Par user_oracle dans le forum Oracle
    Réponses: 9
    Dernier message: 22/02/2006, 13h08

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