暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 无法使用sqlplus选择所有读取所有列

askTom 2016-11-27
523

问题描述

嗨,汤姆,
我正在尝试对表中的列进行假脱机处理(有200多列) ,但我无法导出所有列,因为从sqlplus返回的列数量有限。共享脚本中的代码片段:

设置COLSEP ','线尺寸32767数字宽频18长2000回波关闭
将修剪设置为阵列大小5000自动提交关闭关闭在修剪关闭时清除标题
设置暂停关闭服务器输出(在检查关闭时)
设置下划线关闭页面大小0转义标题关闭反馈关闭自动换行

SPOOL&s池驱动器.&s池驱动器.&s池驱动器. TABLE_XYZ.csv

选择/*csv*/
'正在从表TABLE_XYZ中提取数据', SYSTAMP从双通道读取数据;
选择/*csv*/
xmlagg ( xml元素(e ,列名||',') .extext('//text()')按列ID排序)
来自于用户_TAB_COLS WHERE TABLE_NAME='TABLE_XYZ';
选择/*csv*/
*来自TABLE_XYZ ,其中项目ID = &p_id ;
阀芯关闭;

有什么我错过了吗?或者是否有任何方法可以打印所有列,无论它超过行缓冲区大小?

专家解答

如果输出大于32767 ,则sqlplus不会显示它,除非您打开换行(然后行将换行)。

SQL> create table TABLE_XYZ ( col1 char(200) );

Table created.

SQL>
SQL> declare
  2    ins_sql varchar2(32000) := q'{insert into TABLE_XYZ values ('x'}';
  3  begin
  4  for i in 2 .. 200 loop
  5    execute immediate 'alter table TABLE_XYZ add col'||i||' char(200)';
  6    ins_sql := ins_sql || ',''x''';
  7  end loop;
  8  execute immediate ins_sql||')';
  9  end;
 10  /

PL/SQL procedure successfully completed.

SQL>
SQL>
SQL> SET COLSEP ',' LINESIZE 32767 NUMWIDTH 18 LONG 2000 ECHO OFF
SQL> SET TRIMOUT ON ARRAYSIZE 5000 AUTOCOMMIT OFF FLUSH OFF HEADING ON TERMOUT OFF
SQL> SET PAUSE OFF SERVEROUTPUT ON TRIMSPOOL ON VERIFY OFF
SQL> SET UNDERLINE OFF PAGESIZE 0 ESCAPE OFF HEADING OFF FEEDBACK OFF WRAP OFF
SQL>
SQL> SELECT * from TABLE_XYZ;
rows will be truncated

rows will be truncated

rows will be truncated


...
...

SQL> set wrap on
SQL> SELECT * from TABLE_XYZ;
x                                                                                                                                                                                               ,x                                                                                                                                                                                               ,x
                                                                                  ,x                                                                                                                                                                                               ,x                                                                                                                                                                                               ,x
                                                                                                                                                             ,x                                                                                                                                                                                               ,x
                                               ,x                                                                                                                                                                                               ,x                                                                                                                                                                                               ,x
                                                                                                                          ,x                                                                                                                                                                                               ,x
            ,x                                                                                                                                                                                               ,x                                                                                                                                                                                               ,x
                                                                                               ,x                                                                                                                                                                                               ,x                                                                                                                                                                                               ,x
                                                                                                                                                                          ,x                                                                                                                                                                                               ,x
                                                            ,x                                                                                                                                                                                               ,x                                                                                                                                                                                               ...


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论