【问题标题】:Debugging PL/SQL Collections using PL/SQL Developer使用 PL/SQL Developer 调试 PL/SQL 集合
【发布时间】:2019-06-24 20:49:32
【问题描述】:

如何在调试窗口(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】:

    目前看来是不可能的。根据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
    

    对于复杂类型,您必须编写自定义函数以您需要的格式转储数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-08
      • 2021-09-11
      • 1970-01-01
      • 1970-01-01
      • 2013-10-24
      • 2013-07-23
      • 2020-03-21
      相关资源
      最近更新 更多