Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I define a type in oracle11g that references a collection of that type?

I want to do something like this

create type Item as object (
    id number,
    subitems table of ref Item
)

but oracle throws an exception when I try to do it. Is this possible, and if yes then how?

like image 831
pablochan Avatar asked Feb 28 '23 14:02

pablochan


1 Answers

Oracle will not compile your definition because the type Item hasn't been compiled yet. Why dont you give this a try:

Compile this:

CREATE OR REPLACE TYPE Item;

CREATE OR REPLACE TYPE items_table IS TABLE OF REF item;

and then try:

CREATE OR REPLACE TYPE item AS OBJECT (
   id number,
   subitems items_table
)
like image 67
akf Avatar answered Mar 03 '23 04:03

akf