Я хочу создать функцию, которая возвращает несколько строк в таблицу объектного типа.
Я создал объект и объект вложенной таблицы, и теперь, когда я запускаю функцию, возникает ошибка, которая говорит
PL/SQL: оператор SQL игнорируется PL/SQL: ORA-00947: недостаточно значений
-- Object type creation
create or replace type test_object_sn as object
(
column_1 varchar2(30),
column_2 varchar2(30),
column_3 number
);
-- Table of object
create or replace type test_otable_sn as table of test_object_sn;
-- function (where I get an error)
create or replace function load_test_object_sn
return test_otable_sn
as
details test_otable_sn;
begin
with ad as (select 'a', 'b', 4 from dual
union all
select 'r', '5', 3 from dual
union all
select 'g', 's', 3 from dual)
select * into details from ad;
return details;
end;
Я хочу, чтобы объект таблицы test_otable_sn загружался с данными, а затем запрашивал его с помощью функции table() через мою функцию load_test_object_sn, например. select * from table(load_test_object_sn);