4

こんなことしたい

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

しかし、私がそれを行おうとすると、oracleは例外をスローします。これは可能ですか?もしそうなら、どのように?

4

2 に答える 2

8

Itemタイプがまだコンパイルされていないため、Oracleは定義をコンパイルしません。なぜこれを試してはいけないのですか?

これをコンパイルします:

CREATE OR REPLACE TYPE Item;

CREATE OR REPLACE TYPE items_table IS TABLE OF REF item;

次に試してください:

CREATE OR REPLACE TYPE item AS OBJECT (
   id number,
   subitems items_table
)
于 2009-06-28T13:29:58.270 に答える
0

それはいいですね!あなたはこれを試すことができます:

create type item_ids_t is table of number;

create type Item as object (
   id number,
   subitems item_ids_t);

つまり、サブアイテムはIDのリストにすぎず、idでインデックス付けされたテーブルを検索するために使用されます。

于 2009-06-28T13:30:04.120 に答える