① 新建文件 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