您的位置:首页 > 数据库

配置SqlPlus输出格式及提示符显示登陆用户和数据库

2012-02-29 16:57 381 查看
cat $ORACLE_HOME/sqlplus/admin/login.sql

set serveroutput on size 1000000

set trimspool on

set long 5000

set linesize 100

set pagesize 9999

set linesize 154

col GROUP# for 99

col THREAD# for 99

col SEQUENCE# for 9999

col MEMBER for a50

col MEMBERS for 99

col name for a35

col username for a15

col file_name for a45

col tablespace_name for a30

col MACHINE for a30

col program for a34

col sid for 9999

col spid for a8

--col value for a50

col COMMENTS for a50

col object_owner for a20

col object_name for a30

col TABLE_OWNER for a20

col TABLE_NAME for a30

col COLUMN_NAME for a30

col owner for a15;

col table_owner for a15

col index_type for a10

col DB_BLOCK_SIZE for a20

col UNDO_RETENTION for a30

col sql_text for a74

col text for a60

col r_owner for a15

col index_owner for a15

col GRANTEE for a15

col GRANTOR for a15

col PRIVILEGE for a35

col PROPERTY_VALUE for a50

col LAST_RUN_DURATION for a28

col DEST_NAME for a20

col DESTINATION for a30

col PLAN_TABLE_OUTPUT for a130

col SCHEMA_NAME for a20

col OCCUPANT_NAME for a30

col MOVE_PROCEDURE for a35

col DESCRIPTION for a50

col p1 for a30

col p2 for a30

col p3 for a30

col p3text for a46

col p2text for a46

col OPERATION for a50

col OPTIONS for a50

col statement for a88

col object for a50

col error for a35

col ARCHIVE_NAME for a40

col segment_name for a25

col segment_type for a25

col COMPONENT for a25

col parameter1 for a35

col parameter2 for a35

col parameter3 for a35

col sql_redo for a90

col sql_undo for a90

col log_user for a10

col priv_user for a10

col schema_user for a11

col INTERVAL for a20

col what for a48

col seg_name for a30

col SQL_REDO for a90

col pval2 for a50

col event for a50

col dest_name for a30

col p1 for 99999999999999

col p2 for 99999999999999

col p3 for 99999999999999

col maxbytes for 999999999999999999

col MODE_REQUESTED for a30

col MODE_HELD for a30

col OPERATION for a30

col options for a30

--调度相关

COL JOB_NAME for A15

COL JOB_CREATOR for A11

COL PROGRAM_OWNER for A11

COL PROGRAM_NAME FOR A12

COL SCHEDULE_NAME FOR A15

COL SCHEDULE_OWNER FOR A14;

col SCHEDULE_TYPE for a13

COL RESOURCE_PLAN FOR A13;

COL JOB_CLASS FOR A20

col START_DATE for a20

col END_DATE FOR a19

col PROGRAM_ACTION for a45

col COMMENTS for a15

col WINDOW_NAME for a20

col REPEAT_INTERVAL for a22

col DURATION for a20

col NEXT_START_DATE for a18

col DURATION for a8

col LAST_START_DATE for a18

col job_action for a10

col job_type for a10

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

echo '@@login.sql' >> $ORACLE_HOME/sqlplus/admin/glogin.sql

注意:

每次登录sqlplus 时,会先执行$ORACLE_HOME/sqlplus/glogin.sql 或者当前目

录的login.sql 脚本。但是,会存在各种各样的限制。在9i 或以下版本里,假如你

的脚本里有如下内容:

set sqlprompt "_connect_identifier >"

当第一次启动并连接到数据库DB1 时,提示信息为:

DB1>

然后再连接到另外一个数据库上:

DB1> connectscott/tiger@db2

connected

DB1>

尽管连到了DB2,但提示信息还是DB1。说明这个提示有问题。其实原因很

简单,login.sql 只是在第一次启动sqlplus 时执行,而在每次重新连接时不会执行。

所以提示信息没有变。

在10g 中,这种限制没有了。脚本不仅在启动sqlplus 时执行,还会在每次连接数

据库时也会执行:

DB1> connectscott/tiger@db2

connected

DB2>

这样信息就是正确了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐