Как вызвать процедуру с ассоциативными массивами в Oracle из Java

У меня есть хранимая процедура, которая выглядит так:

TYPE ref_cursor IS REF CURSOR;    
TYPE parametro IS RECORD (
    nombre      VARCHAR2(50), -- I want to remove this value and make it the key of the table instead.
    valor       VARCHAR2(32000),
    tipo        VARCHAR2(1),
    sentencia   VARCHAR2(32000)
);
TYPE parametros IS TABLE OF parametro INDEX BY VARCHAR2(50);

PROCEDURE build_cursor (
    params IN parametros
    results OUT ref_cursor
);

А из процедуры build_cursor я хочу иметь доступ к содержимому таблицы по ее ключу.

parametros('key');

Однако я не знаю, как построить ассоциативный массив из Java, я видел только примеры простых массивов, то есть:TYPE parametros IS TABLE OF parametro;

Как я могу позвонитьbuild_cursor процедура из Java?

Я прочитал это:Как вызвать хранимую процедуру оракула, которые включают пользовательский тип в Java? но я не знаю, какие изменения я должен внести в его пример Java для создания ассоциативного массива;Where do I put the Key of the current element?

Это рабочий тест от Oracle.

params('key').nombre        := 'key'; -- I want this to be removed because it's the key.
params('key').valor         := 'Roger';
params('key').tipo          := 'V';
params('key').sentencia     := 'Something';
-- Call the procedure
pk_sql_utils.build_cursor(
    params => params,
    results => :results
);

Ответы на вопрос(1)

Ваш ответ на вопрос