如何增加sqlplus列的输出长度?

10 浏览
0 Comments

如何增加sqlplus列的输出长度?

我有一些查询从模式中查找一些对象的DDL。

我得到的结果列在查询的中间被截断了。

我该如何增加列的宽度?

我尝试了以下代码:

SET SERVEROUTPUT ON SIZE 1000000;
SET LINESIZE 50000;
set pagesize 50000;
set long 50000;

但我仍然得到相同的结果。

0
0 Comments

是的,这可能是由于终端的换行导致的。你可以尝试设置终端的宽度来解决这个问题。

在Windows上,你可以使用以下命令来设置终端宽度:


mode con:cols=100

在Linux上,你可以使用以下命令来设置终端宽度:


stty cols 100

这将把终端宽度设置为100个字符。你可以根据需要调整宽度。

另外,你也可以尝试使用SET LINESIZE命令来增加列的输出长度。例如,你可以运行以下命令来将列的输出长度设置为100:


SET LINESIZE 100

这些解决方法应该能够帮助你增加sqlplus列的输出长度。记得根据你的需要调整宽度。

0
0 Comments

问题:如何增加sqlplus列输出长度?

原因:在使用SQL Plus时,通过设置SET LINESIZE命令可以增加列的输出长度。然而,如果控制台窗口不够宽,无论设置了多大的LINESIZE,控制台窗口的“Screen Buffer Size Width”属性设置会导致自动换行。

解决方法:可以通过配置单个列的显示宽度,使用COLUMN col_name FORMAT Ax命令,其中x是所需的字符长度。这在只想在控制台屏幕上显示一两个超大列的摘要值时非常有用。

另外,在Windows操作系统中,通过设置set longchunksize 1000命令可以解决在80字符处截断的问题。

如果希望将默认偏好设置为SET LINESIZE,可以将此命令添加到一个名为login.sql的脚本中。在启动sqlplus时,会自动执行该脚本。但是,在最近的版本中,为了使此设置生效,必须在环境变量中将ORACLE_PATH设置为包含login.sql脚本的目录。

0
0 Comments

问题出现的原因是输出的内容被截断为80个字符。解决方法是通过修改SQL*Plus的配置来增加输出列的长度。

具体的解决方法如下:

1. 打开SQL*Plus,并登录到数据库。

2. 使用以下命令来修改配置:

set termout off
set verify off
set trimspool on
set linesize 200
set longchunksize 200000
set long 200000
set pages 0
column txt format a120

这些配置选项将会设置输出的行大小为200个字符,并且定义了一个名为"txt"的列格式,其长度为120个字符。

3. 现在,当你运行查询并输出结果时,你将会看到输出列的长度已经增加到200个字符,并且不再被截断。

通过以上步骤,你可以解决SQL*Plus中输出列长度被截断的问题。

0