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

Import/Export Oracle Discussion :

Encore une histoire d'import et de NLS


Sujet :

Import/Export Oracle

  1. #1
    Futur Membre du Club
    Bricoleur
    Inscrit en
    Janvier 2006
    Messages
    6
    Détails du profil
    Informations professionnelles :
    Activité : Bricoleur

    Informations forums :
    Inscription : Janvier 2006
    Messages : 6
    Points : 8
    Points
    8
    Par défaut Encore une histoire d'import et de NLS
    Bonjour tous,

    Après quelques heures de tests, de lecture et d'arrachage de cheveux sur la question des paramètres NLS, je me permets de vous solliciter.

    Voici le contexte :
    Je souhaite mettre en place un environnement de développement interne pour pouvoir travailler sur l'application d'un client dont j'ai récupéré la maintenance applicative (aujourd'hui il n'a que sa prod et l'ancien mainteneur bossait directement dessus ).
    Le client en question m'a donc fourni un export de sa base Oracle 9i.

    Voici les paramètres de sa base source :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    NLS_NCHAR_CHARACTERSET = AL16UTF16
    NLS_LANGUAGE = FRENCH
    NLS_TERRITORY = AMERICA
    NLS_CHARACTERSET = US7ASCII
    Au niveau session pour le schéma applicatif :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    NLS_LANGUAGE = FRENCH
    NLS_TERRITORY = AMERICA
    NLS_CHARACTERSET = US7ASCII
    L'export a été fait en US7ASCII apriori.


    J'ai donc créé une base de données US7ASCII, bien que cela me laisse dubitatif. Je fais l'import avec NLS_LANG=FRENCH_FRANCE.US7ASCII et si je me connecte au schéma avec SQL Plus (sous Linux), je vois bien les accents.

    Cependant, lorsque je lance mon appli (BMC Remedy AR System 6.3, si certains connaissent) et que je me connecte dessus avec son client propriétaire sous Windows, les caratères accentués apparaissent comme des petits rectangles.
    Par contre, je peux saisir des accents via ce client et ils sont correctement réaffichés par la suite. Dans la base avec sqlplus ils apparaissent ainsi : "ééé".
    L'appli en question utilise le client Oracle pour se connecter à la base et apriori ses paramètres de session sont corrects.

    Et là je ne sais plus quoi tenter.
    Est-ce que quelqu'un aurait une petite idée de comment récupérer ces accents ?
    J'ai lu le tuto sur les NLS_LANG, sur le fait qu'il ne fallait pas nécessairement que le client et la base aient le même character set. J'ai lu également que si le character set était US7ASCII, Oracle n'effectuait aucune conversion ?

    Merci pour votre aide.

  2. #2
    Membre éprouvé
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Points : 1 294
    Points
    1 294
    Par défaut
    c'est un pb de charset au niveau de ton client à mon avis: base de registres, parématrage de tes applis clientes etc... entre ton appli et sqlplus, ils ne doivent pas avoir le meme, du coup y'a un décalage quand l'un écrit et l'autre lit...

  3. #3
    Futur Membre du Club
    Bricoleur
    Inscrit en
    Janvier 2006
    Messages
    6
    Détails du profil
    Informations professionnelles :
    Activité : Bricoleur

    Informations forums :
    Inscription : Janvier 2006
    Messages : 6
    Points : 8
    Points
    8
    Par défaut
    C'est le serveur d'appli AR System, sous Linux, sur la même machine que la base de données, qui se connecte à celle-ci. L'appli cliente ne se connecte pas directement à la base.
    Le client point de vue Oracle est donc le serveur d'appli. Or, il utilise le caractère set défini dans l'environnement (NLS_LANG) de l'utilisateur Linux qui démarre le process en question.
    J'ai testé différentes valeurs pour NLS_LANG, et mon appli ne démarre qu'avec US7ASCII (en FRENCH ou AMERICAN). Si je mets autre chose en espérant que Oracle se charge de faire les conversions qui vont bien, le process tombe tout de suite (plein d'erreurs SQL).

Discussions similaires

  1. encore une histoire de placement des Jlabel
    Par canary dans le forum Agents de placement/Fenêtres
    Réponses: 5
    Dernier message: 28/04/2008, 18h04
  2. Encore une histoire pour remplacer les points
    Par Djohn dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 10/08/2007, 11h41
  3. Encore une histoire de code source
    Par olivier03 dans le forum Juridique
    Réponses: 15
    Dernier message: 07/06/2007, 10h48
  4. encore une histoire de transparence
    Par mathou810 dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 28/09/2006, 13h45
  5. [JAR][debutant] encore une histoire de classpath
    Par blaz dans le forum Général Java
    Réponses: 6
    Dernier message: 27/07/2005, 12h28

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