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

SQL*Loader Oracle Discussion :

Pb sqlldr avec 'é' en fin de chaine


Sujet :

SQL*Loader Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Mars 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 8
    Par défaut Pb sqlldr avec 'é' en fin de chaine
    Bonjour,
    Je rencontre un curieux problème lors du chargement de données avec sqlldr.

    Un champ, déclaré en CHAR(225), de l'un des enregistrements du fichier, contient un texte tronqué à 225 caractères comprenant des minuscules accentuées.
    Ce champ est encadré par des double-quotes(") et est séparé des champs précédent et suivant par le caractère $.
    ex : $"Début du texte...........maté "$ (avec un espace entre é et ")

    Les options du fichier de contrôle sont :
    FIELD TERMINATED BY '$' OPTIONNALY ENCLOSED BY '"'

    Tous les enregistrements (+ de 400 000) sont correctement chargés avec respect des caractères accentués sauf celui décrit précédemment.

    Le fichier log indique que ni le terminated field, ni le enclosed field n'a été trouvé.
    Le problème disparait en remplaçant le "é" final par un "e" et en laissant les autres "é".

    Le problème subsiste en déclarent le champ en CHAR(230).

    Quelqu'un a-t'il une idée sur l'origine de ce problème?

    Pour info,
    le NLS_LANG de la base et du client oracle est AMERICAN_AMERICA.AL32UTF8
    et le CHARACTERSET spécifié dans le fichier de contrôle est AL32UTF8

    11/03/2010-Complément
    J'ai identifié l'origine du problème. D'après la documentation d'Oracle, l'utilisation d'un character set multibyte interdit d'avoir des caractères shift-sensitive (é) en début et fin de chaîne de caractères.
    Je n'ai pas encore trouvé le moyen de contourner ce problème.

  2. #2
    Membre du Club
    Inscrit en
    Mars 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 8
    Par défaut Pb sqlldr avec 'é' en fin de chaine
    Bonjour,

    Le problème a été résolu de la manière suivante :

    -Création de la table avec colonne déclarée en VARCHAR2(225 CHAR)
    -Paramètre CHARACTERSET fixé à WE8ISO8859P1 dans le fichier de contrôle


    PS : Je n'arrive pas à positionner mon message à RESOLU, c'est pourquoi je poste en "réponse".

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

Discussions similaires

  1. Réponses: 29
    Dernier message: 27/07/2006, 17h28
  2. comment supprimer des caracteres en fin de chaines
    Par BernardT dans le forum Langage
    Réponses: 1
    Dernier message: 19/07/2006, 17h41
  3. [AJAX] IE coupe début et fin de chaine
    Par julien.63 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 04/07/2006, 17h39
  4. Supprimer les espaces en fin de chaine.
    Par KneXtasY dans le forum C
    Réponses: 5
    Dernier message: 26/12/2005, 10h33
  5. Suppression des blancs en fin de chaine
    Par Spyco dans le forum C
    Réponses: 4
    Dernier message: 22/12/2005, 15h13

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