[Oracle] Script SQL avec commande SPOOL

Arch -  
 Arch -
Bonjour,

Je suis en train de créer un script SQL en utilisant la commande 'SPOOL <nom fichier>', ma SQL, puis 'SPOOL OFF'.
Je précise que ma requête fonctionne (testée à part).
Mais là j'obtiens une erreur [Err] ORA-00922: missing or invalid option et je pense que c'est un problème de syntaxe (il me sort cette erreur quand il rencontre un ';', faut-il ne pas en mettre du tout?).

Merci de votre aide!

1 réponse

  1. DROE Messages postés 148 Date d'inscription   Statut Membre Dernière intervention   48
     
    Hello,

    copie/colle ton script ici et tu auras une réponse rapide.

    sinon c'est :

    SPOOL F:\mon_log.txt
    ou
    SPOOL mon_log.txt

    SELECT ....
    FROM
    WHERE.... ;

    SPOOL OFF

    http://www.dba-ora.fr/
    2
    1. Arch
       
      en fait en exécutant les commandes une par une dans la console de sql plus + ça fonctionne, mais en lançant le script dans navicat ça me donne cette erreur ...c'est normal?
      0
    2. DROE Messages postés 148 Date d'inscription   Statut Membre Dernière intervention   48
       
      Les commandes une par une et par fichier script fonctionnent sous SQL*PLUS car SPOOL nom_de_fichier et SPOOL OFF sont des commandes SQL*PLUS.
      Sous TOAD cela fonctionne, maintenant Navicat je ne sais pas si il gère le output (SPOOL).
      0
    3. Arch
       
      effectivement, j'ai pas l'impression. Merci pour tes réponses!
      Maintenant tu saurais pourquoi il y toujours les déclarations SQL dans le fichier de sortie (la requête et les commandes), même en ayant défini le echo à off ?
      0
    4. DROE Messages postés 148 Date d'inscription   Statut Membre Dernière intervention   48
       
      SET ECHO OFF
      fonctionne que dans les scripts, pas en mode interactif.

      Il faut appeler le script pas l'exécuter en mode interactif

      SQLPLUS login/password@tns @TON_SCRIPT.SQL

      http://www.dba-ora.fr
      0
    5. Arch
       
      bah écoute c'est impeccable, merci beaucoup
      0