Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 如何在oracle11g中定义引用该类型集合的类型?_Database_Oracle_Object Relational Model - Fatal编程技术网

Database 如何在oracle11g中定义引用该类型集合的类型?

Database 如何在oracle11g中定义引用该类型集合的类型?,database,oracle,object-relational-model,Database,Oracle,Object Relational Model,我想做这样的事情 create type Item as object ( id number, subitems table of ref Item ) 但当我尝试这样做时,oracle抛出了一个异常。这是否可能,如果是,那么如何编译?Oracle将不会编译您的定义,因为类型项尚未编译。你为什么不试试这个呢: 编译此文件: CREATE OR REPLACE TYPE Item; CREATE OR REPLACE TYPE items_table IS TABLE OF

我想做这样的事情

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

但当我尝试这样做时,oracle抛出了一个异常。这是否可能,如果是,那么如何编译?

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
)

那太好了,不是吗!你可以试试这个:

create type item_ids_t is table of number;

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

这意味着子项只是一个id列表,然后将用于查找按id索引的表。

PLS-00103:在期望以下之一时遇到符号“table”:长双参考字符时间戳间隔日期二进制国家字符nchar