oracle 使用spool导出数据到文件

时间:2024-11-10 15:32:00
--oracle 使用spool导出数据到文件


需要将数据库中的数据以txt文本形式导出,可以用spool方式导出。


--创建脚本文件
--添加如下语句
SPOOL D:\works\数据库dump\spool\
set echo off  --不显示脚本中正在执行的SQL语句
set feedback off --不显示sql查询或修改行数
set term off   --不在屏幕上显示
set heading off  --不显示列
set linesize 500  --设置行宽,根据需要设置,默认100
select owner||','||object_name|| ',' ||object_id FROM dba_objects WHERE rownum<=1000;  --需要导出的数据查询sql
SPOOL OFF


--在command窗口执行
@D:\works\数据库dump\spool\

--查看输出结果

注意:需要将语句放在文件中使用@调用才会不输出到前端,如果是一行行执行,
      就算使用了set term off 还是会输出的。    


实验过程:
SQL> set echo off
SQL> set feedback off
SQL> set termout off
SQL> set heading off
SQL> SPOOL D:\works\数据库dump\spool\
Started spooling to D:\works\数据库dump\spool\
 
SQL> select owner||','||object_name|| ',' ||object_id FROM dba_objects WHERE rownum<=1000; 


xxxxxx
xxxxxx
 
SQL> SPOOL OFF
Stopped spooling to D:\works\数据库dump\spool\


SQL> @D:\works\数据库dump\spool\
SQL>