超类型表的存储子句,其中子类型具有嵌套表

时间:2020-04-25 17:25:04

标签: oracle oracle11g user-defined-types nested-table

当子类型包含嵌套表时创建超类型表时,存储子句出现问题。

我的嵌套表类型是

CREATE TYPE TYP_PROJECT AS OBJECT(
    PROJECT_NO          CHAR(3),
    PROJECT_NAME        VARCHAR(70),
    PROJECT_TYPE        VARCHAR(13),
    PROJECT_DURATION    INTEGER
)
/
CREATE TYPE TYP_NEST_PROJECT AS TABLE OF REF TYP_PROJECT
/

我的超级类型和子类型创建为

CREATE TYPE TYP_PERSON AS OBJECT(
  PERSON_NO       CHAR(4),
  FIRST_NAME      VARCHAR(40),
  MIDDLE_NAME     VARCHAR(40),
  LAST_NAME       VARCHAR(40)
)
NOT FINAL;
/
CREATE TYPE TYP_EMPLOYEE UNDER TYP_PERSON(
  DATE_JOINED         DATE,
  SALARY              INTEGER,
  PROJECTS            TYP_NEST_PROJECT
)
/

当我创建超类型的表时,为内部嵌套表指定存储子句时会出错。

CREATE TABLE PERSON_TABLE OF TYP_PERSON(
  CONSTRAINT PKEY_PERSON PRIMARY KEY (PERSON_NO)
)
NESTED TABLE PROJECTS STORE AS NTBL_EMPLOYEE_PROJECTS
/
SQL Error: ORA-00904: : invalid identifier
00904. 00000 -  "%s: invalid identifier"
*Cause:    
*Action:

我有些困惑,所以很感激收到任何帮助!

0 个答案:

没有答案
相关问题