[Oracle] Script SQL avec commande SPOOL

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. 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. 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. 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. 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. 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. bah écoute c'est impeccable, merci beaucoup
      0