在SQL*PLUS中怎样设置列的显示宽度

在SQL*PLUS中怎样设置列的显示宽度,第1张

没办法统一设置列宽的,但是可以根据具体的列名设置宽度,用 col ... format ... 的方法 字符类型的 : sqlplus>col 列名 format a10 这句设定指定列名显示宽度是每行10个字符 sqlplus>col 列名 format 99999 这是设定数字类型的 可以在$ORACL...

没办法统一设置列宽的,但是可以根据具体的列名设置宽度,用 col ... format ... 的方法 字符类型的 : sqlplus>col 列名 format a10 这句设定指定列名显示宽度是每行10个字符 sqlplus>col 列名 format 99999 这是设定数字类型的 可以在$ORACL

 配置环境脚本

**********************************

cd $ORACLE_HOME/sqlplus/admin

vi glogin.sql

define _editor=vi

set serveroutput on size 1000000

set trimspool on

set long 5000

set linesize 1000

set pagesize 9999

column plan_plus_exp format a80

column global_name new_value gname

set termout off

define gname=idle

column global_name new_value gname

select lower(user) || '@' || substr( global_name, 1, decode( dot, 0, length(global_name), dot-1) ) global_name

from (select global_name, instr(global_name,'.') dot from global_name )

set sqlprompt '&gname>'

set termout on

下面对这些脚本做些说明:

define _editor=vi:设置sql*plus使用的默认编辑器。可以把默认编辑器设置为你最喜欢的文本编辑(而不是字处理器),如记事本(Notepad)或emacs。

set serveroutput on size 1000000:这会默认地打开dbms_output(这样就不必每次再键入这个命令了)。另外也将默认缓冲区大小设置得尽可能大。

set trimspool on:假脱机输出文本时,会去除文本行两端的空格,而且行宽不定。如果设置为OFF(默认设置),假脱机输出的文本行宽度则等于所设置的LINESIZE。

set long 5000:设置选对LONG或CLOB列时显示的默认字节数

linesize 1000:设置sql*plus显示的文本宽为1000字符。

set pagesize 9999:pagesize可以控制sql*plus多久打印一次标题,这里将pagesize设置为一个很大的数(所以每页只有一组标题)。

column plan_plus_exp format a80:设置由autotrace得出的解释计划输出(explain plan output)的默认宽度。A80通常足以放下整个计划。

set termout on/off:是控制@方式执行之返回的

define gname=idle:定义一个变量gname,值为idle。

column global_name new_value gname:告诉sql*plus取得global_name列中的最后一个值,并将这个值赋给替换变量gname。

select lower(user) || '@' || substr( global_name, 1, decode( dot, 0, length(global_name), dot-1) ) global_name

from (select global_name, instr(global_name,'.') dot from global_name ) 取得global_name的值

set sqlprompt '&gname>' :通常用来设置SQL提示符的方法


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11074491.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存