[20231101]使用tpt seg2.sql脚本问题.txt
--//今天在使用tpt的seg2.sql脚本时遇到1个奇怪问题.当执行 @ seg2 scott.il_01,我总是要打入一个回车才有输出。
--//前几天都没有这样的情况。
SYS@book> @ seg2 scott.il_01
SEG_MB OWNER SEGMENT_NAME SEGMENT_TYPE SEG_TABLESPACE_NAME BLOCKS HDRFIL HDRBLK
------ ----- ------------ ------------ ------------------- ------ ------ ------
0 SCOTT IL_01 INDEX USERS 8 4 690
--//而第2次执行就不需要.
--//仔细查看源代码,才发现我做了小量修改加入缺省情况下不显示分区名,大多数情况下应用表都是没有分区的表,显示它有点多余。
--//参考链接:[20230414]完善seg2.sql脚本.txt
--//我做了小量修改加入如下代码:
col v_con new_value v_con
set term off
select decode('&&2',NULL,'noprint','1','print','p','print','print','print','noprint') v_con from dual;
set term on
col seg_partition_name head SEG_PART_NAME for a30 &v_con
--//测试如下:
SCOTT@book> @ver1
PORT_STRING VERSION BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
SCOTT@book> define 2
SP2-0135: symbol 2 is UNDEFINED
--//一定我进入以后马上执行,从来没有对参数2赋值。而我代码加入set term off,set term on。根本看不到提示。
--//前几天能正常执行是因为前面执行的语句已经给参数2赋值了。
--//作一个记录,这类问题不知道有什么好的方法解决。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-2992677/ ,如需转载,请注明出处,否则将追究法律责任。