首页 > 数据库 > > GaussDB 100 表函数D篇下
语法:
select * from table(dbg_control_info());
功能:查询target session的调试信息控制参数。
注意:
当前session为target session或者debug session才可以使用该表函数。
说明:
NAME:调试参数名称。
VALUE:调试参数值。
示例:
SQL> select * from table(dbg_control_info());
NAME VALUE
-------------------------------- ------------
timeout 100000
curr_count 1
status 1
is_force_pause
is_force_terminate
is_attached 1
debug_id 64
brk_flag 7
brk_flag_stack_id 1
max_stack_id 1
max_break_id 9
11 rows fetched.
语法:
select * from table(dbg_show_values(param1));
功能:查询变量信息,包含变量所在的调用栈编号,变量所在语句块的名称,如果是record类型的属性上一级record类型名称,变量名称或者record类型属性名称,语句块编号,语句块内变量编号,record类型变量的属性偏移量,变量值。
注意:
当前session为debug session且被调试程序为WAITING状态,才可以使用该表函数。
说明:
输入参数说明
param1:int类型,设置需要查看的调用栈编号,0表示查询所有调用栈的变量信息,大于0表示查询对应调用栈中的变量信息。如果参数值已经大于当前最大调用栈深度,则查询所有调用栈的变量信息。
返回参数说明
STACK_ID:变量所在的调用栈编号,从1开始计数。
BLOCK_NAME:变量所在语句块的名称。
PARENT:如果是record类型的属性,上一级record类型名称。
NAME:变量名称或者record类型属性名称。
VID_BLOCK:语句块编号。
VID_ID:语句块内变量编号。
VID_OFFSET:record类型变量的属性偏移量。
VALUE:变量值,其中游标类型显示对应属性值。
TYPE:变量类型。
示例:
select * from table(dbg_show_values());
STACK_ID BLOCK_NAME PARENT NAME VID_BLOCK VID_ID VID_OFFSET VALUE TYPE
------------ ---------------------------------------------------------------- ---------------------------------------------------------------- ---------------------------------------------------------------- ------------ ------------ ------------ ---------------------------------------------------------------- ----------------------------------------------------------------
1 TEST_STEP1_BEGIN V1_INT 0 0 0 13 BINARY_INTEGER
1 TEST_STEP1_BEGIN V2_NUM 0 1 0 6.7 NUMBER
1 TEST_STEP1_BEGIN V3_VARC 0 2 0 pfa VARCHAR
1 TEST_STEP1_BEGIN V4_C 0 3 0 CHAR
1 TEST_STEP1_BEGIN V5_DATE 0 4 0 DATE
1 TEST_STEP1_BEGIN V6_DOUB 0 5 0 BINARY_DOUBLE
2 P1 0 0 0 pfa VARCHAR
3 :NEW.ID 0 0 0 5 BINARY_INTEGER
3 V1 1 0 0 5 BINARY_INTEGER
9 rows fetched.
语法:
select * from table(dbg_proc_callstack(param1));
功能:查询调用栈信息,包含调用栈编号,从1开始计数,调用程序对应的用户,调用程序名称,调用程序对应物理行号,调用程序对应行类型。
注意:
当前session为debug session且被调试程序为WAITING状态,才可以使用该表函数。
说明:
param1:int类型,设置需要查看的调用栈编号,0表示查询所有调用栈的变量信息,大于0表示查询对应调用栈中的变量信息。
STACK_ID:调用栈编号,从1开始计数。
UID:调用程序对应的用户编号。
OID:调用程序名称编号。
OWNER:调用程序对应的用户。
OBJECT:调用程序名称。
LOC_LINE:调用程序对应物理行号。
LINE_TYPE:调用程序对应行类型。
示例:
SQL> select * from table(dbg_proc_callstack());
STACK_ID UID OID OWNER OBJECT LOC_LINE LINE_TYPE
------------ ------------ -------------------- ---------------------------------------------------------------- ---------------------------------------------------------------- ------------ --------------------------------
1 11 LINE_SETVAL
2 1077 SYS TEST_LV1_FUNC1 3 LINE_RETURN
3 1076 SYS TEST_LV2_FUNC1 8 LINE_RETURN
3 rows fetched.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3128740/ ,如需转载,请注明出处,否则将追究法律责任。