在oracle数据库中用spool导出txt格式的表 
突然报错ora-01489连接的字符串过长spool我是这样设置的
set echo off;    
set heading off;   
set pagesize 0;   
set trimspool on;
set linesize 999999;
不知道如可解决 请大侠请教oracle数据库

解决方案 »

  1.   

    可以在PL/SQL块中解决这个问题,具体可以先拼(PL/SQL)接然后,使用UTL_FILE写入txt
      

  2.   

    UTL_FILE是什么 我对这个很不了解???谢谢大侠进一步指导
      

  3.   

    写文件。
    http://blog.csdn.net/fw0124/article/details/7785623
      

  4.   

    set linesize 999999;修改小点看看
      

  5.   

    包UTL_FIle用于读写操作系统的文件,前提是首先创建Directory对象、授权。然后就可以使用UTL_FILE包中提供的类型、过程、函数来读取,写入,操作目录中的文件了。
      

  6.   


    --使用UTL_FILE包,按照一定的格式,导出数据库中某张表的数据:
    --使用具有DBA权限的用户创建DIRECTORY名,例如“CZW_DIR”
    DECLARE
      HANDLE UTL_FILE.FILE_TYPE;
    BEGIN
      HANDLE := UTL_FILE.FOPEN('CZW_DIR','DEPT.TXT','W',1000);
      FOR I IN (SELECT T.DEPTNO||','||T.DNAME||','||T.LOC AS MSG FROM SCOTT.DEPT T) LOOP
        UTL_FILE.PUT_LINE(HANDLE,I.MSG);
      END LOOP;
      UTL_FILE.FFLUSH(HANDLE);
      UTL_FILE.FCLOSE(HANDLE);
    END;