Oracle脚本调试new_value替代变量的使用
在Oracle的日常运维中,我们经常会使用v$session视图中的p1,p2,p3,当p1text=type|mode,一般就代表这个p1代表一个锁,那么可以通过如下脚本来进行查看锁的定义,下面脚本并展示了new_value替代变量的使用
1.编写脚本如下
[oracle@rds lhh]$ cat p1.sql set lines 200 SET ECHO OFF TERMOUT ON FEEDBACK OFF VERIFY OFF col TYPE for a5 col NAME for a20 col ID1_TAG for a15 col ID2_TAG for a14 col DESCRIPTION for a55 col type new_value v_type print select chr(bitand(&1,-16777216)/16777215) || chr(bitand(&1,16711680)/65535) type, mod(&1, 16) lock_mode from dual ; select * from v$lock_type where type='&v_type';
col type new_value v_type print:代表将type列值保存到v_type变量中
2.使用脚本调用
#脚本后面直接跟p1的具体值
SQL> @p1 1398145029 TYPE LOCK_MODE ----- ---------- SV 5 TYPE NAME ID1_TAG ID2_TAG IS_ DESCRIPTION ----- -------------------- --------------- -------------- --- ------------------------------------------------------- SV Sequence Ordering object # 0 NO Lock to ensure ordered sequence allocation in RAC mode SQL>