create table foo(
id number,
status varchar2(10)
);
Tabla creada.ORA-00947 No hay suficientes valores mientras se declara el tipo globalmente
insert into foo values(1, 'open');
insert into foo values(2, 'close');
insert into foo values(3, 'open');
insert into foo values(4, 'open');
insert into foo values(5, 'close');
create type foo_obj is object (
id number,
status varchar2(10)
);
/
create type foo_nt
as table of foo_obj;
/
create or replace package test_bulk
is
procedure temp;
end;
/
create or replace package body test_bulk
is
procedure temp
is
v_nt foo_nt;
begin
select id ,status
bulk collect into v_nt
from foo;
end temp;
end test_bulk;
Ésta es una situación muy extraña, cuando se crea un objeto de texto y tabla anidada de ese tipo a nivel mundial y crear una variable de tipo tabla anidada y mayor recoger en esa variable consigo
ORA-00947: no hay suficiente de error valores
sin embargo, cuando me declaro un tipo de registro y la tabla anidada de ese tipo de registro y a continuación, una variable de la tabla anidada Dentro del paquete, entonces el mayor por encima de coleccionar obras y lo hará no lanzar el error
¿Alguien puede ayudarme con esto?
: Gracias por esto, funciona .. –
Probado en Oracle 11.2. ¡Gracias! –
Gracias por la propina (Oracle 11.2) –