unix 当通过shell脚本运行SQL命令时,列标题被修剪[重复]

ryoqjall  于 5个月前  发布在  Unix
关注(0)|答案(1)|浏览(51)

此问题在此处已有答案

how to increase sqlplus column output length?(11个回答)
上个月关门了。
我正在编写一个shell脚本,使用多个选择查询一个接一个地获取数据,但在我的结果输出中,我的列标题在两个字符后被修剪。
我得到的结果(列名/标题)
| St| COUNT1|
| --|--|
| 第一|行|
| 二|行|
相反,预期结果应为:
| 地位|COUNT1|
| --|--|
| 第一|行|
| 二|行|
我在我的脚本中使用这些set命令

typeset -r SQL_SET_PARA="set TERMOUT ON echo on define off pagesize 15 linesize 4000 lines 5000 heading on verify off feedback off wrap off trimspool on serveroutput on long 20000000 longchunksize 20000000  space 9"

字符串
我也试着添加"SET column STATUS format A6",但结果仍然一样。

k5ifujac

k5ifujac1#

这是因为您的STATUS列数据适合2个字符/数字。此列的数据长度为2,SQLPlus(默认情况下)将列名截断为基础数据类型长度。不幸的是,使用任何SQLPlus参数都无法避免这种行为。
但是您可以对STATUS列使用列级格式,如下所示

column STATUS format A6

字符串

相关问题