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 :

Creation table externe - dimension des champs


Sujet :

SQL*Loader Oracle

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Creation table externe - dimension des champs
    Je souhaite faire l'import d'un fichier csv au moyen d'une table externe.

    Mon fichier csv comporte 3 colonnes (Code, Nom, Observation).

    Le problème est que dans mon script de création de ma table je défini la dimension de mes champs mais dans le cadre de l'import, il s'en fiche et me retourne des erreurs dans certains cas
    Dans mon fichier csv, la zone observation fait parfois plus de 256 caractères et si c'est le cas, l'import plante sur ces lignes.
    Mon script de création est le suivant :
    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
    CREATE TABLE TBL_INTEGRATION (
    CHAMP1 VARCHAR2(1000),
    CHAMP2 VARCHAR2(1000),
    CHAMP3 VARCHAR2(1000)
    )
    ORGANIZATION EXTERNAL (
     TYPE ORACLE_LOADER DEFAULT DIRECTORY DIR_INTEGRATION
     ACCESS PARAMETERS (
      RECORDS DELIMITED BY NEWLINE
      FIELDS TERMINATED BY ';'
      MISSING FIELD VALUES ARE NULL
      ('CHAMP1',
      'CHAMP2',
      'CHAMP3'
       )
     )
    LOCATION ('test.csv')
    )
    REJECT LIMIT UNLIMITED;
    Le log de création de ma table est le suivant :
    Field Definitions for table TBL_INTEGRATION
    Record format DELIMITED BY NEWLINE
    Data in file has same endianness as the platform
    Rows with all null fields are accepted
    Fields in Data Source:
    CHAMP1 CHAR (255)
    Terminated by ";"
    Trim whitespace same as SQL Loader
    CHAMP2 CHAR (255)
    Terminated by ";"
    Trim whitespace same as SQL Loader
    CHAMP3 CHAR (255)
    Terminated by ";"
    Trim whitespace same as SQL Loader

    Si ensuite je regarde la structure de ma table , j'ai bien mes champs à 1000 caractères.
    Comment puis-je faire pour que l'import ne plante pas ?
    Merci de votre aide.

  2. #2
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Pour information, nous venons de trouver la (une solution)
    à savoir qu'on reforce dans la partie Field la taille de ceux-ci.
    On a alors :
    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
    CREATE TABLE TBL_INTEGRATION (
           CHAMP1 VARCHAR2(1000),
           CHAMP2 VARCHAR2(1000),
           CHAMP3 VARCHAR2(1000)
           )
    ORGANIZATION EXTERNAL (
         TYPE ORACLE_LOADER DEFAULT DIRECTORY DIR_INTEGRATION
         ACCESS PARAMETERS (
              RECORDS DELIMITED BY NEWLINE
              FIELDS TERMINATED BY ';'
              MISSING FIELD VALUES ARE NULL
                   (
                   'CHAMP1' char(1000),
                   'CHAMP2' char(1000),
                   'CHAMP3' char(1000)
                   )
              )
              LOCATION ('test.csv')
         )
    REJECT LIMIT UNLIMITED;

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

Discussions similaires

  1. Update d'une table en fonction des champs d'une autre table
    Par The Molo dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 05/02/2008, 16h41
  2. Réponses: 4
    Dernier message: 28/03/2007, 18h27
  3. Copie de table avec modification des champs
    Par ordipaco dans le forum Langage SQL
    Réponses: 2
    Dernier message: 26/03/2007, 20h38
  4. Lier des tables et nature des champs
    Par Maludi dans le forum Access
    Réponses: 3
    Dernier message: 26/07/2006, 16h52
  5. Réponses: 4
    Dernier message: 27/01/2006, 17h38

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