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 :

caractères accentués dans CLOB


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2006
    Messages : 142
    Par défaut caractères accentués dans CLOB
    Bonjour,

    Nous avons des pb sur les caractères accentués dans les CLOB, alors que ça marche avec les VARCHAR2 ! Quand on update la colonne avec par exemple 'éèàù' (sur TOAD ou SQL dev) on obtient autre chose à la relecture (genre des carrés). On n'observe ce phénomène qu'avec la 8 :

    Oracle 8i : OK pour VARCHAR2, KO pour CLOB
    Oracle 9i : OK pour les 2

    Les 2 bases (sous windows 2003) sont configurées avec NLS_TERRITORY=FRANCE et NLS_LANGUAGE=FRENCH. Le client (Windows) est aussi en français.

    Et manifestement le dump() ne marche pas pour les CLOB...

    Si quelqu'un a une idée...

  2. #2
    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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from nls_database_parameters;
    que vaut le national characteter set ? et le character set ?

    comment insérez-vous les lignes ? les lisez-vous ?

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2006
    Messages : 142
    Par défaut
    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
    NLS_LANGUAGE	FRENCH
    NLS_TERRITORY	FRANCE
    NLS_CURRENCY	?
    NLS_ISO_CURRENCY	FRANCE
    NLS_NUMERIC_CHARACTERS	.,
    NLS_CHARACTERSET	WE8ISO8859P1
    NLS_CALENDAR	GREGORIAN
    NLS_DATE_FORMAT	DD/MM/RRRR
    NLS_DATE_LANGUAGE	FRENCH
    NLS_SORT	BINARY
    NLS_TIME_FORMAT	HH24:MI:SSXFF
    NLS_TIMESTAMP_FORMAT	DD/MM/RR HH24:MI:SSXFF
    NLS_TIME_TZ_FORMAT	HH24:MI:SSXFF TZH:TZM
    NLS_TIMESTAMP_TZ_FORMAT	DD/MM/RR HH24:MI:SSXFF TZH:TZM
    NLS_DUAL_CURRENCY	?
    NLS_COMP	BINARY
    NLS_NCHAR_CHARACTERSET	WE8ISO8859P1
    NLS_RDBMS_VERSION	8.1.7.0.0
    NLS_LENGTH_SEMANTICS	BYTE
    NLS_NCHAR_CONV_EXCP	FALSE
    Les données sont insérées et lues dans l'appli avec une IHM client léger.
    Sinon sur Oracle SQL dev (ou TOAD) en modifiant directement la donnée dans le tableau Results (ou data).

  4. #4
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2006
    Messages : 142
    Par défaut
    En comparant les valeurs des 2 bases j'ai noté 2 différences :

    NLS_CHARACTERSET : WE8ISO8859P1 (8i) WE8ISO8859P15 (9i)
    NLS_NCHAR_CHARACTERSET : WE8ISO8859P1 (8i) AL16UTF161 (9i)

    est-ce que ça peut agir sur les CLOB ?
    Sinon je peux faire l'essai...

  5. #5
    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
    Par défaut
    NLS_NCHAR_CHARACTERSET : WE8ISO8859P1 (8i) AL16UTF161 (9i)
    ne concerne que le types de données NVARCHAR2, NCHAR et NCLOB.

    NLS_CHARACTERSET : WE8ISO8859P1 (8i) WE8ISO8859P15 (9i)
    Les différences entre les 2 jeux de caractères ne concernent pas les caractères accentués.

    Et manifestement le dump() ne marche pas pour les CLOB
    Essayez DBMS_LOB.SUBSTR.

    Dans votre cas, il faut aussi vérifier que la partie jeu de caractères de NLS_LANG ne pose pas de problème de conversion.

  6. #6
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Parfois, il suffit d'utiliser des NCLOB en lieu et place de CLOB.

  7. #7
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2006
    Messages : 142
    Par défaut
    Bon, eh bien ça remarche après un redémarrage de la base, mais je ne sais pas pourquoi... Pourtant la base a déjà été redémarrée il y 2 jours et ça n'avait rien changé...

    Merci quand même pour les infos.

Discussions similaires

  1. [MySQL] Caractères accentués dans base de données MySQL
    Par enfin dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 11/01/2007, 20h54
  2. [AJAX] Caractères accentués dans un responseXML
    Par Herode dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 28/12/2006, 21h34
  3. Réponses: 6
    Dernier message: 14/07/2005, 14h25
  4. Chaines avec caractères accentués dans interbase
    Par Tsimplice dans le forum Bases de données
    Réponses: 4
    Dernier message: 08/03/2004, 17h12
  5. Chaînes avec des caractères accentués dans Interbase
    Par Invité dans le forum Bases de données
    Réponses: 2
    Dernier message: 04/03/2004, 22h39

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