导出sql结果
使用spool 即可。
spool ttt.txt; #
select 1 from dual; # 查询语句
spool off; # 关闭缓冲,并导出内容到文件
小提示:
spool ttt.txt; 文件不存在会新建,存在的话,直接清空。
执行sql并不会输出内容到文件,spool off之后才会。 所以一定不要忘了spool off。
生成的文件在哪里
如果使用 spool /root/ttt.txt 一般会报错,因为没有权限。
懒一点,直接 spool ttt.txt; 默认会在oracle的用户目录下生成,例如 /home/oralce;
如何导出csv
也是用spool命令,就是sql里面记得拼接逗号。 跟文件格式无关,没有必要命名为*.csv。
select id || ',' || inv_num from t_scm_vat_main where rownum < 3 ;
可以不用后缀么
例如 spool ccc ;
可以,但是不推荐,因为会默认生成ccc.lst文件。相当于还是加上了后缀,如果直接去找ccc文件,反而找不到。 不如直接指定个后缀名。
其他
sqlplus如何执行上条语句
/ 左斜杠即可