You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Sqlplus查询Oracle表每行仅显示一列,调整linesize无效如何解决

Oracle SQLPlus查询结果单列显示解决方法

你遇到的问题是SQLPlus默认会按字段定义的长度设置显示宽度,当多个字段的默认宽度之和超过你设置的linesize时,就会自动将每列折行单独显示,仅调整linesize、pagesize没有匹配列宽设置就不会生效,可按以下方法解决:

  • 手动指定单字段显示宽度
    针对你查询的Manager表字段,先执行以下格式化命令再执行查询即可:
    -- 设置字符类型字段显示宽度,A后面跟的是要显示的字符数,可按需调整
    COLUMN FAMILYNAME FORMAT A15
    COLUMN PERSONALNAME FORMAT A15
    -- 设置数字类型字段显示宽度,用9占位对应最大位数
    COLUMN SALARY FORMAT 999999
    -- 配合调整行宽,确保大于所有列宽之和避免折行
    SET LINESIZE 100
    
  • 全局设置所有字符字段默认显示宽度
    如果表字段多不想逐个设置,可以直接调整全局字符字段默认宽度:
    SET CHARWIDTH 15
    SET LINESIZE 200
    
    该设置会对当前会话所有查询的字符类型字段生效,无需逐个配置COLUMN规则。
  • 永久生效配置
    要是不想每次打开SQLPlus都手动输入以上命令,可以把需要的格式化参数写入SQLPlus安装目录下的glogin.sql文件,或者当前操作系统用户目录下的login.sql文件,每次启动SQLPlus会自动执行配置。

调整后再执行select * from Manager;就能得到正常的横向排列结果:

FAMILYNAME      PERSONALNAME      SALARY
--------------- --------------- --------
Sung            Sam              56000
Smith           Darwin           54000
P. Fries        Chris            63000
Williams        Sean             43000

内容的提问来源于stack exchange,提问作者cookythecat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 19:27:05