在终端中显示时如何格式化sqlplus中的列?

Posted

技术标签:

【中文标题】在终端中显示时如何格式化sqlplus中的列?【英文标题】:How to format the columns in sqlplus while displaying it in the terminal? 【发布时间】:2016-01-02 17:05:37 【问题描述】:

我在 Ubuntu 上的 Oracle DB XE 中使用 HR 帐户。 所以我在终端中运行 SQL*Plus。 我知道最大可显示的 linesize 是 150 没有换行 但是当我在终端中显示员工表时,最后两列最终会环绕。 我有

set lines 150;
set trimout on;
set pagesize 10000;
set tab off;
set wrap on;

我看到了

正如您在此处看到的,LAST_NAME、EMAIL、HIRE_DATE 列占用了额外的空格,这些空格可用于显示被包装的列。 我试着打开和关闭包裹,但这也无济于事。 我如何优化占用的空间,因为我也在假脱机文件并且输出看起来非常混乱。

【问题讨论】:

【参考方案1】:

尝试添加

COLUMN LAST_NAME FORMAT A10 

/

限制为 10 个 alfanum char

【讨论】:

感谢您的回复,它成功了。但我想知道这个限制是否会在仅显示甚至插入新元素时受到影响? 嘿,我搞砸了。我用数字列进行了上述查询,现在它只在该特定列中返回# 符号。 employee_id 列只有 3 位数字开头,所以我用 A5 进入,但现在这个。帮助 您是指包含整数或数值内容的列? 是的,如果您在图片中查看第一列,即 EMPLOYEE_ID,则有 3 位数字。所以我用A5格式化。现在我得到####### 尝试使用 COLUMN EMPLOYEE_DI FORMAT 999

以上是关于在终端中显示时如何格式化sqlplus中的列?的主要内容,如果未能解决你的问题,请参考以下文章

将文本格式化为数字的 SQLplus 脚本

如何使用 sqlplus 终端将大量数据插入 Oracle DB 中的“长”数据类型?

SQL*Plus Oracle 中的列格式化

如何以正确的格式以科学记数法显示 PySpark 数据框中的列

如何从sqlplus中的数字列中删除小数点后的尾随零?

如何将 firebase 错误消息从终端显示到 UI?