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 Oracle Discussion :

probleme sqlldr avec un "."


Sujet :

SQL Oracle

  1. #1
    Membre confirmé
    Inscrit en
    Mars 2004
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 137
    Par défaut probleme sqlldr avec un "."
    bonjour,

    J'ai un probleme avec sqlldr.

    J'ai un champs numeric dans une table

    ACCOUNT_BME NUMBER(16,6)

    et je veux loader un décimal dedans a partir d'un fichier.

    2222.2222

    il plante me disant que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Record 5032: Rejected - Error on table HYFI_DATA_PROD.STAGING_BULK_MANUAL_ENTRIES.
    ORA-00604: error occurred at recursive SQL level 1
    ORA-01722: invalid number
    dans mon ctl j'ai pourtant pour ce champs :

    Account_bme "REPLACE(:Account_bme,'.',',')"

    Ce qui me fait rager c'est que dans mon environnement de test, ca marche et pas en prod... y'a t-il un setting qui pourrait m'aider...

    merci

  2. #2
    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
    Comparez

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2004
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 137
    Par défaut
    je viens de valider et les parametre sont identiques...

    Qu'est-ce que ca pourrait-etre... je suis pas mal décourager...

    merci

  4. #4
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ACCOUNT_BME NUMBER(16,6) "TO_NUMBER(:account_bme,'9999999999.999999')"
    ok?

  5. #5
    Membre confirmé
    Inscrit en
    Mars 2004
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 137
    Par défaut
    ca ne marche pas... il me dit invalid values...

    c'est pas mal bizarre...

  6. #6
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 33
    Par défaut
    salut,
    je te conseil de contourner cette situation en annulant le point et en division par 100 si tu a que 2 décimales(1000 si tu en a trois) ,Oracle utilisera les bon paramètres.
    ton code devient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ACCOUNT_BME "TO_NUMBER(REPLACE(:ACCOUNT_BME,'.'))/100"
    le troisième argument de la fonction REPLACE n'est pas nécessaire car en replace le point par un null.
    j'espère que j'ai pas tors ,bon courage.

Discussions similaires

  1. Sudo problème avec les simples quotes
    Par Tronche dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 23/03/2007, 12h02
  2. [MySQL] Problème avec un double quote
    Par wormseric dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 26/01/2007, 14h44
  3. [Tableaux] souci avec des simples quotes
    Par Jean Fi dans le forum Langage
    Réponses: 6
    Dernier message: 29/03/2006, 20h13

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