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 :

Importer table externe avec sequence dans une base de données


Sujet :

Oracle

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 15
    Points : 9
    Points
    9
    Par défaut Importer table externe avec sequence dans une base de données
    Bonjour à tous

    J'ai un projet à realiser pour mon école. Je dois creer une table à partir d'un fichier externe sous la forme .dat.

    Le probléme est que je n'arrive pas à ajouter une séquence à ma table ( la séquence est bien creer mais j'ai des erreurs lorsque je veux selectioner le contenu de ma table...

    Voici le fichier .dat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    seq_t_abonnements.nextval,15-25 ans,50,25,10
    seq_t_abonnements.nextval,Senior,40,20,20
    seq_t_abonnements.nextval,Pro,30,15,30
    Voici la requête SQL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    CREATE TABLE t_abonnements(abonnements_id NUMBER(6),titre VARCHAR2(25), reduction_pct NUMBER(6), reduction_we_pct NUMBER(6), prix NUMBER(6))
    ORGANIZATION EXTERNAL(
    TYPE oracle_loader
    DEFAULT DIRECTORY dml_t_x
    ACCESS PARAMETERS(
    RECORDS DELIMITED BY NEWLINE CHARACTERSET US7ASCII
    NOBADFILE
    NOLOGFILE
    FIELDS TERMINATED BY ',' )
    LOCATION ('dml_t_abonnements.dat'));
    VOICI LA SEQUENCE :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE SEQUENCE seq_t_abonnements
    INCREMENT BY 1
    START WITH 1
    NOMAXVALUE 
    NOMINVALUE 
    NOCACHE
    NOCYCLE;
    VOICI CE QUE RETOURNE UN DESC DE LA TABLE (elle est bien crée):



    VOICI CE QUE RETOURNE UN SELECT * DE LA TABLE :



    Voila, sachant que si je n'utilise pas la séquence et que je met dans le fichier dat : 1, 2, 3... à la main je n'ai pas de souci... c'est vraiment la séquence qui pose problème.

    Merci d'avance pour votre aide ;-)

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 50
    Points : 65
    Points
    65
    Par défaut Séquence ?!?
    Dans ton cas, je te conseille de modifier ton fichier de données ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    15-25 ans,50,25,10
    Senior,40,20,20
    Pro,30,15,30
    Et ta table externe comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    CREATE TABLE t_abonnements(titre VARCHAR2(25), reduction_pct NUMBER(6), reduction_we_pct NUMBER(6), prix NUMBER(6))
    ORGANIZATION EXTERNAL(
    TYPE oracle_loader
    DEFAULT DIRECTORY dml_t_x
    ACCESS PARAMETERS(
    RECORDS DELIMITED BY NEWLINE CHARACTERSET US7ASCII
    NOBADFILE
    NOLOGFILE
    FIELDS TERMINATED BY ',' )
    LOCATION ('dml_t_abonnements.dat')
    REJECT LIMIT UNLIMITED);
    Les erreurs seront écrites dans un fichier .bad. Le REJECT LIMIT UNLIMITED retire la limitation du nombre d'erreurs retournées.

    Et pour obtenir un numéro de séquence :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select seq_t_abonnements.nextval as abonnements_id, titre, reduction_pct, reduction_we_pct, prix
    from t_abonnements;

Discussions similaires

  1. Importer un fichier CSV automatiquement dans une base de données
    Par nabil123456 dans le forum Interfaces Graphiques en Java
    Réponses: 5
    Dernier message: 19/05/2015, 11h23
  2. Réponses: 4
    Dernier message: 03/08/2012, 16h41
  3. Import d'un fichier Excel dans une base de données MySql via POI
    Par intel42 dans le forum Développement Web en Java
    Réponses: 8
    Dernier message: 27/07/2011, 16h24
  4. [SQL] Importer un fichier .sql dans une base de données avec PHP
    Par budiste dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 23/06/2006, 14h15

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