【发布时间】:2020-03-23 14:21:15
【问题描述】:
我需要创建具有 O_BIEN 属性的表。 O_BIEN 类型包含一个 T_HABITANT 类型的嵌套表。
这是我的代码:
CREATE OR REPLACE TYPE O_HABITANT AS OBJECT (
estmajeur CHAR(1),
lien VARCHAR(10)
);
\
CREATE OR REPLACE TYPE T_HABITANT AS TABLE OF O_HABITANT;
\
CREATE OR REPLACE TYPE O_BIEN AS OBJECT (
surfacetotale NUMBER(3, 2),
nombrepices VARCHAR(2),
habitant T_HABITANT
);
\
CREATE TABLE FISC (
id NUMBER GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
bien O_BIEN
)NESTED TABLE bien STORE AS NST_BIEN;
我有以下错误:
ORA-22912: 指定的列或属性不是嵌套表类型” *原因:为列或属性指定了存储子句 这不是嵌套表列或属性。 *操作:指定一个有效的嵌套表列或属性。
那么,如何将 O_BIEN 的 habitant 属性指定为嵌套表呢?
【问题讨论】:
-
否,因为 O_BIEN 实际上是不可实例化的类型。还有另外两种扩展 O_BIEN 的类型。
标签: sql oracle plsql nested-table