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

Récupérer le contenu d'une table dans un fichier


Sujet :

Sql*Plus Oracle

  1. #1
    Inactif  

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    3 064
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 064
    Points : 4 605
    Points
    4 605
    Par défaut Récupérer le contenu d'une table dans un fichier
    Bonjour,

    Je dispose de plusieurs bases de données (5 au total). Je dois récupérer pour ces 5 bases a chaque fois les 50 à 100 premières lignes de toutes les tables de la base , dans le but d'une étude exploratoire.

    J'ai repris la commande du spool pour mettre un fichier en sortie utilisé sur Oracle SQL+ dans SQL developer :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    spool D:\table.csv;
     
    SELECT table.champ1 , table.champ2 FROM univers.table WHERE ROWNUM < 101 ; 
     
    spool off ;
     
    spool D:\table2.csv;
     
    SELECT table2.champ1 , table2.champ2 FROM univers.table2 WHERE ROWNUM < 101 ; 
     
    spool off ;

    Le fichier se créer est reste vide . Si je relance la commande , le fichier se remplit ... avec la requête sql et non le contenu de la table.

    Dans l'idéale j'essaye de faire arriver les fichiers sur le disque D de mon PC sinon sur un disque réseau .

    Une idée de comment balancer le tout dans des fichiers de sortie ?

    Merci de l'aiguillage

  2. #2
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Bonjour,

    Ce n'est pas très clair quand tu parles de sql+ et de sqldeveloper. Tu utilises quoi ?

    Sous sqldeveloper 18.3, j'ai testé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    spool C:\tmp\table1.csv;
     
    SELECT 'tab1' FROM dual; 
     
    spool off ;
     
    spool C:\tmp\table2.csv;
     
    SELECT 'tab2' FROM dual; 
     
    spool off ;
    Exécuté en tant que script (F5)

    Sortie du script dans sqldeveloper :
    'TAB
    ----
    tab1


    'TAB
    ----
    tab2
    Et j'ai bien les 2 fichiers de créés
    table1.csv:
    'TAB
    ----
    tab1


    table2.csv
    'TAB
    ----
    tab2

    J'ai aussi testé sur un lecteur réseau, le fichier est bien créé avec les données.
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  3. #3
    Inactif  

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    3 064
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 064
    Points : 4 605
    Points
    4 605
    Par défaut
    Bonjour,

    Citation Envoyé par McM Voir le message
    Bonjour,

    Ce n'est pas très clair quand tu parles de sql+ et de sqldeveloper. Tu utilises quoi ?
    Par le passé j'utilisais sql+. La maintenant je suis sur sql developer.

    Citation Envoyé par McM Voir le message
    Sous sqldeveloper 18.3, j'ai testé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    spool C:\tmp\table1.csv;
     
    SELECT 'tab1' FROM dual; 
     
    spool off ;
     
    spool C:\tmp\table2.csv;
     
    SELECT 'tab2' FROM dual; 
     
    spool off ;
    Exécuté en tant que script (F5)

    J'ai aussi testé sur un lecteur réseau, le fichier est bien créé avec les données.
    J'ai trouvé la nuance , sur sql+ on a besoin d'un ";" sur chaque fin de ligne de script avec l'instruction "spool" , pas sur oracle sql developer.

    Merci de l'aiguillage

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

Discussions similaires

  1. [XL-2003] Récupérer le contenu d'une ligne dans un fichier excel (rapidement)
    Par kigrez dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/04/2010, 21h20
  2. Réponses: 1
    Dernier message: 10/04/2010, 07h16
  3. Réponses: 3
    Dernier message: 27/07/2009, 10h36
  4. Réponses: 1
    Dernier message: 25/04/2008, 16h17
  5. Réponses: 7
    Dernier message: 12/06/2007, 14h59

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