唐伯虎 发表于 2021-6-26 11:11:19

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

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

spool j:\test.txt
select sysdate from dual;
spool off;
  ② 执行命令 @ j:\test.sql,输出结果就保存到了test.txt文件中了。
  补充:SQL查询结果写入txt
  什么也不说,直接来个例子。

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;
  以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

页: [1]
查看完整版本: Oracle 实现将查询结果保存到文本txt中