2015-09-15 2 views
0

Так у меня есть объявление типа в пакете, как:Экземпляр типа, объявленного в пакете непрозрачна после компиляции для отладки

TYPE lt_sometpye IS TABLE OF gt_sometype INDEX BY PLS_INTEGER; 

и я облицовочный 2 проблемы:

  • первый я могу создать типа в базе данных, а не в пакете, который выглядит как

    TYPE lt_sometpye IS TABLE OF gt_sometype;

, но он не может быть проиндексирован с помощью INDEX BY PLS_INTEGER, который является требованием.

  • 2-й вариант, я заявлял тот же тип в упаковке с индексом. После компиляции его экземпляры непрозрачны при отладке.

В обоих случаях gt_sometype также скомпилирован для отладки.

Как я могу сделать экземпляр такого типа отображения фактических данных во время просмотра во время отладки?

+1

Ассоциативный массив ('index by') представляет собой тип коллекции только для PL/SQL. SQL (по крайней мере до 11 г) не поддерживает его. – user272735

+0

thx, i обновленные теги, добавив это для 11g2 –

ответ

0

Я смущен, что вы проблема. Почему не это?

create or replace type matt_typ AS OBJECT (a number); 

declare 
    type plsql_type_t is table of matt_typ INDEX BY PLS_INTEGER; 
    l_tab plsql_type_t; 
begin 
    l_tab (l_tab.count+1) := new matt_typ(5); 
end; 

Извините, я знаю, что это не ответ, но SQL не вписывается в комментарий.

+0

Это похоже на то, что я описал в моей второй проблеме, поэтому для plsql_type_t я не вижу значения свойств, но я становлюсь непрозрачным. –

Смежные вопросы