ORA-00947 Za mało wartości podczas deklarowania typu globalnie

<code> create table foo(
   id number,
   status varchar2(10)
 );
</code>

Stół utworzony.

<code>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;
</code>

Jest to bardzo dziwna sytuacja, gdy tworzę obiekt typu i zagnieżdżoną tabelę tego typu Globalnie i tworzę zmienną typu zagnieżdżonej tabeli i zbiorczo gromadzę w tej zmiennej, którą otrzymuję

ORA-00947: brak błędów wartości

Jednakże, gdy zadeklaruję typ rekordu i zagnieżdżoną tabelę tego typu rekordu, a następnie zmienną zagnieżdżonej tabeli Wewnątrz pakietu, powyższe zbiorcze gromadzenie danych działa i nie spowoduje błędu

Czy ktoś może mi przy tym pomóc?

questionAnswers(1)

yourAnswerToTheQuestion