好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Oracle 实现将查询结果保存到文本txt中

① 新建文件 test.sql 把下面代码copy 到test.sql 脚本中

?

1

2

3

spool j:\test.txt

select sysdate from dual;

spool off ;

② 执行命令 @ j:\test.sql,输出结果就保存到了test.txt文件中了。

补充:SQL 查询结果 写入txt

什么也不说,直接来个例子。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

CREATE OR REPLACE PROCEDURE PROC_INSERTSQLTXT AS

 

  V_FILE UTL_FILE.FILE_TYPE;

  V_INPUT CLOB;

BEGIN

  V_FILE := UTL_FILE.FOPEN( 'DATA_PUMP_DIR' , 'EMPNO.TXT' , 'W' );

  FOR I IN ( SELECT EMPNO|| '|' ||

      ENAME|| '|' ||

      JOB || '|' ||

      MGR || '|' ||

      to_char(HIREDATE, 'yyyy-mm-dd' ) || '|' ||

      SAL || '|' ||

      COMM || '|' ||

      DEPTNO as stringname FROM SCOTT.EMP)

  LOOP

  UTL_FILE.PUT_LINE(V_FILE,I.STRINGNAME);

  END LOOP;

  UTL_FILE.FCLOSE(V_FILE);

EXCEPTION

  WHEN UTL_FILE.ACCESS_DENIED THEN

  DBMS_OUTPUT.PUT_LINE( '拒绝访问!' );

  WHEN OTHERS THEN

  DBMS_OUTPUT.PUT_LINE( 'SQLERRM: ' || SQLERRM);

END ;

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。

原文链接:https://blog.csdn.net/u013107634/article/details/52187069

查看更多关于Oracle 实现将查询结果保存到文本txt中的详细内容...

  阅读:39次