加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 站长百科 > 正文

所有列的Oracle列宽

发布时间:2021-05-25 02:05:08 所属栏目:站长百科 来源:网络整理
导读:例如,执行用于显示各种列的长语句时的问题之一 select g.guestid,g.forename,g.surname,b.bookingid,b.arrivedate,b.departdate,br.floorno,br.roomno from... Linux终端上的列大小似乎是一个问题.例如,Forename VarChar(80)列在执行上述语句时会占用屏幕的

例如,执行用于显示各种列的长语句时的问题之一

select g.guestid,g.forename,g.surname,b.bookingid,b.arrivedate,b.departdate,br.floorno,br.roomno from...

Linux终端上的列大小似乎是一个问题.例如,Forename VarChar(80)列在执行上述语句时会占用屏幕的大部分宽度,并且一种方法可以通过以下方式将其删除:

SET COLUMN FORENAME FORMAT A10

例如.但是,许多专栏需要反复进行,这很长.即

SET COLUMN FORENAME FORMAT A10
SET COLUMN SURNAME FORMAT A10

等等…

有没有办法说根据文字宽度调整列宽,以便每个人都很好地适应.而不是这样..

我更喜欢一些不涉及使用FUNCTIONS的解决方案.

不,没有简单的方法可以使SQL * Plus“自动调整”列宽到文本宽度.

但是,脚本编写可以让您的生活更轻松.

首先,减少打字.不要做SET COLUMN FORENAME FORMAT A10,做一些像@c forename 10这样的事情.

17:33:31 SYSTEM@dwal> cl col
columns cleared
17:33:33 SYSTEM@dwal> select * from dual;

D
-
X

Elapsed: 00:00:00.01
17:33:37 SYSTEM@dwal> @c dummy 10
17:33:43 SYSTEM@dwal> select * from dual;

DUMMY
----------
X

Elapsed: 00:00:00.01
17:33:45 SYSTEM@dwal> get s:c.sql
  1* col &1. for a&2.
17:33:50 SYSTEM@dwal>

或者像这样快速隐藏宽列:

17:48:44 SYSTEM@dwal> select owner,table_name from all_tables where rownum = 1;

OWNER                          TABLE_NAME
------------------------------ ------------------------------
SYS                            CON$

Elapsed: 00:00:00.24
17:48:49 SYSTEM@dwal> @np owner
17:48:53 SYSTEM@dwal> select owner,table_name from all_tables where rownum = 1;

TABLE_NAME
------------------------------
CON$

Elapsed: 00:00:00.26
17:48:56 SYSTEM@dwal> get s:np
  1  col &1 noprint
  2* @undef

这些只是我每天使用的许多脚本中的两个.这种方法需要花费时间和一些个人关注定制,以适应它并使其有效,但减少你显着按键的数量.

第二,有glogin.sql.它是一个脚本,每次连接到某个地方时都会执行.我假设您知道一个“长”列的列表,使您的行换行.

只需在那里列出它们,然后列出它们

SET COLUMN FORENAME FORMAT A10
SET COLUMN SURNAME FORMAT A10

每次(重新)连接时都会设置列参数.

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读