J'ai essayé
select * from users
save D:\test.sql create;
Mais SQL plus me donne "pas de fin propre" Comment spécifier le chemin dans Oracle SQL dans Windows?
Utilisez la bobine:
spool myoutputfile.txt
select * from users;
spool off;
Notez que cela créera myoutputfile.txt dans le répertoire à partir duquel vous avez exécuté SQL * Plus.
Si vous devez exécuter cette opération à partir d'un fichier SQL (par exemple, "tmp.sql") au démarrage de SQLPlus et la sortie dans un fichier nommé "output.txt":
tmp.sql:
select * from users;
Commander:
sqlplus -s username/password@sid @tmp.sql > output.txt
Remarquez que je n'ai pas d'instance Oracle devant moi pour l'instant, vous devrez peut-être effectuer vous-même votre travail pour déboguer ce que j'ai écrit de mémoire.
Très similaire à Marc, la seule différence que je ferais serait de spool à un paramètre comme celui-ci:
WHENEVER SQLERROR EXIT 1
SET LINES 32000
SET TERMOUT OFF ECHO OFF NEWP 0 SPA 0 PAGES 0 FEED OFF HEAD OFF TRIMS ON TAB OFF
SET SERVEROUTPUT ON
spool &1
-- Code
spool off
exit
Et puis appeler le SQLPLUS en tant que
sqlplus -s username/password@sid @tmp.sql /tmp/output.txt
spool "D:\test\test.txt"
select
a.ename
from
employee a
inner join department b
on
(
a.dept_id = b.dept_id
)
;
spool off
Cette requête spoulera le résultat SQL dans D:\test\test.txt
pour faciliter la réponse 2, vous pouvez également définir le dossier dans lequel vous pouvez placer votre fichier enregistré.
spool /home/admin/myoutputfile.txt
select * from table_name;
spool off;
après cela seulement avec nano ou vi myoutputfile.txt, vous verrez toute la piste SQL.
l'espoir est que l'aide :)