使用PL / SQL Developer调试PL / SQL集合

问题描述 投票:1回答:1

如何在调试窗口(PL / SQL Developer,版本10.0.5.1710)中查看,以查找有关集合中数据数组的信息:嵌套层次结构,具有数据类型及其值的元素而不列出所有其元素分别

DECLARE
    TYPE T_userinfo IS RECORD(
        surname VARCHAR2(8),
        name    VARCHAR2(6),
        sex     VARCHAR2(6)
    );
    TYPE T_group_tab IS TABLE OF T_userinfo INDEX BY VARCHAR2(6);
    TYPE T_class_tab IS TABLE OF T_group_tab INDEX BY PLS_INTEGER;

    team_tab T_class_tab;
BEGIN
    team_tab(0)('group1').surname := 'Bradley';
    team_tab(0)('group1').name    := 'Brian';
    team_tab(0)('group1').sex     := 'male';

    team_tab(1)('group2').surname := 'Johnston';
    team_tab(1)('group2').name    := 'Hilary';
    team_tab(1)('group2').sex     := 'female';
END;

我想在调试窗口中看到类似的内容:

0 => 
    'group1' => 
        'surname' => VARCHAR2 'Bradley'
        'name'    => VARCHAR2 'Brian'
        'sex'     => VARCHAR2 'male'
1 => 
    'group2' => 
        'surname' => VARCHAR2 'Johnston'
        'name'    => VARCHAR2 'Hilary'
        'sex'     => VARCHAR2 'female'

Debugging PL/SQL Collections

plsqldeveloper
1个回答
0
投票

目前似乎不可能。根据newest user guide I found on the web(第25页),PLSQL开发人员可以通过将鼠标悬停在变量上或右键单击并从上下文菜单中选择查看集合变量来显示标量类型的集合。

也可以将鼠标悬停在记录类型的变量上以显示记录字段的值,或者甚至将这些值发送到监视窗口中:

team_tab T_class_tab;
team_tab0 T_group_tab;
team_tab0g T_userinfo;
...
team_tab(0)('group1').surname := 'Bradley';
team_tab(0)('group1').name    := 'Brian';
team_tab(0)('group1').sex     := 'male';
team_tab0 := team_tab(0);
team_tab0g := team_tab0('group1'); -- hover on team_tab0g

对于复杂类型,您必须组成自定义函数以所需格式转储数据。

© www.soinside.com 2019 - 2024. All rights reserved.