本帖最后由 totola147 于 2014-10-31 01:19:57 编辑

解决方案 »

  1.   

    32767不是linesize的限制吧,是varchar2类型的上限,你导出时是不是把字符串都用||连接起来了?
      

  2.   

    1 varchar2 的上限是4000
    2 确实是||连起来了
    3 linesize的上限确实是32767 (验证方法,打开sqlplus 执行命令  set linesize 40000)
      

  3.   


    1 varchar2 的上限是4000
    2 确实是||连起来了
    3 linesize的上限确实是32767 (验证方法,打开sqlplus 执行命令  set linesize 40000)
      

  4.   


    1 varchar2 的上限是4000
    2 确实是||连起来了
    3 linesize的上限确实是32767 (验证方法,打开sqlplus 执行命令  set linesize 40000)
    varchar2做为数据库表的字段时上限是4000
    在pl/sql语句中上限是32767
    如果你使用||连接的字符串长度超过32767就会出错,和linesize没啥关系
      

  5.   


    1 varchar2 的上限是4000
    2 确实是||连起来了
    3 linesize的上限确实是32767 (验证方法,打开sqlplus 执行命令  set linesize 40000)
    varchar2做为数据库表的字段时上限是4000
    在pl/sql语句中上限是32767
    如果你使用||连接的字符串长度超过32767就会出错,和linesize没啥关系经过验证,确实是用||连起来导致的,是所以用竖线连接 是因为数据格式要求为变长,用竖线拼接字段,变长字段不会留有空白,如果使用逗号分隔,字段字段间会有很大的空白   请问您有什么办法吗
      

  6.   


    1 varchar2 的上限是4000
    2 确实是||连起来了
    3 linesize的上限确实是32767 (验证方法,打开sqlplus 执行命令  set linesize 40000)
    varchar2做为数据库表的字段时上限是4000
    在pl/sql语句中上限是32767
    如果你使用||连接的字符串长度超过32767就会出错,和linesize没啥关系经过验证,确实是用||连起来导致的,是所以用竖线连接 是因为数据格式要求为变长,用竖线拼接字段,变长字段不会留有空白,如果使用逗号分隔,字段字段间会有很大的空白   请问您有什么办法吗我找到了两个可能用有的设置  希望通过设置这两个  取消掉空值的填充 以及数据列之间的间隔   试试看
    set null ''
    set space 0
      

  7.   

    可以使用 utl_file 包来实现,输出这 14 个字段时,不要换行。不过你可能要把这些业务逻辑话在存储中了。