类型声明:
CREATE TYPE DIPENDENTE_TY AS OBJECT(
NOME VARCHAR2(20),
CF CHAR(16),
DATAN DATE
) NOT FINAL;
/
CREATE TYPE AMMINISTRATORE_TY UNDER DIPENDENTE_TY(
);
/
CREATE TYPE MEDICO_TY UNDER DIPENDENTE_TY(
SPECIALITA VARCHAR2(20),
REPARTO VARCHAR2(20),
MEMBER PROCEDURE INSERISCI_VISITA(PAZIENTE VARCHAR,
DATAV DATE,
TIPOV VARCHAR2,
TICKET INTEGER)
);
/
CREATE TYPE PAZIENTE_TY AS OBJECT(
CF CHAR(16),
NOME VARCHAR2(20),
COGNOME VARCHAR2(20)
);
/
CREATE TYPE VISITA_TY AS OBJECT(
DATA DATE,
TIPO VARCHAR2(20),
TICKET INTEGER
);
/
CREATE TYPE COLL_REF_VISITA_TY AS TABLE OF REF VISITA_TY;
/
ALTER TYPE MEDICO_TY ADD ATTRIBUTE VISITATO COLL_REF_VISITA_TY;
/
ALTER TYPE PAZIENTE_TY ADD ATTRIBUTE FA_VISITA COLL_REF_VISITA_TY;
/
ALTER TYPE VISITA_TY ADD ATTRIBUTE DIP REF PAZIENTE_TY CASCADE;
/
ALTER TYPE VISITA_TY ADD ATTRIBUTE DIM REF MEDICO_TY CASCADE;
/
CREATE TABLE PAZIENTE_TAB OF PAZIENTE_TY
NESTED TABLE FA_VISITA STORE AS VISITE_PAZIENTE_TAB;
/
CREATE TABLE DIPENDENTE_TAB OF DIPENDENTE_TY;
/
CREATE TABLE VISITA_TAB OF VISITA_TY;
--(
--DIP SCOPE IS PAZIENTE_TAB,
--DIM SCOPE IS DIPENDENTE_TAB
--);
/
我需要声明 Medico_ty 的 VISITATO 嵌套表,但它是 Dipendente_ty 的子类型,因此我只有 Dipendente_ty 类型的实例的表。如何仅为 Medico_ty 实例声明嵌套表?
编辑 当我尝试为 Dipendente_ty 定义表时出现以下错误:
ORA-02320: failure in creating storage table for nested table column TREAT(SYS_NC_ROWINFO$ AS "SQL_PFOHOKUIIIAMJALHSUZHUBDGJ"."MEDICO_TY")."VISITATO" ORA-06512: at "SYS.DBCLOUD_SYS_SEC", line 1404
ORA-06512: at "SYS.DBCLOUD_SYS_SEC", line 2224
ORA-06512: at line 2