配置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>
这样信息就是正确了。
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>
这样信息就是正确了。
相关文章推荐
- 配置SqlPlus输出格式及提示符显示登陆用户和数据库
- dbms_application_info包 (sqlplus登陆数据库提示:访问程序包 DBMS_APPLICATION_INFO 时出错 sp2-0575)
- 关于设置SQLPLUS提示符样式的方法----登陆配置文件,动态加载提示符
- 【数据库学习笔记】Oracle_01_sql*plus,存储结构,用户管理,常用数据类型
- 分享NHibernate在输出窗口显示调试SQL的log4net的集成配置
- 关于sqlplus / as sysdba - 无用户/口令登陆
- Oracle的sqlplus显示输出格式化--显示在同一行
- dotConnect for Oracle中关于SQL*Plus用户的OracleScript提示
- 数据库clone完成后,sqlplus登录提示没有权限
- SQL配置用户数据库映射关系
- 域用户。配置文件变为临时。 提示:您已使用临时配置文件登陆。
- ORACLE SQL 查询数据库 数据显示的格式设置
- 我从16ASPX上下了一个程序在运行时出错是怎么回事?运行时出现用户SA登陆失败,但是我已经把数据库导入SQL
- PL SQL Developer登陆Oracle提示客户端与数据库字符编码设置不一致
- sql*plus 中输出格式控制技巧
- 删除域用户C盘目录,登陆后提示以临时配置文件登陆
- 1. 简单的加法计算器,用户在文本框1,2中输入两个数,点击按钮,在文本框3中显示两个数的和。如果1或者2为错误的数据格式,则弹出对话框提示错误。
- postgresql数据库配置csv格式的日志输出
- sqlplus 输出格式整理
- Oracle之sqlpluse显示格式