2

我有两个名为Parentand的表Child。我正在使用 oracle 创建这些表。子表继承自父表。如何在 oracle 中创建这个继承的子表而不创建类型。

我想要以下 PostgreSQL 创建表的相关 oracle 语句。

Create Table Parent
(
    .....
)

Create Table Child
(
    .....
)INHERITS (Parent);
4

1 回答 1

8

Oracle 不支持表继承——它使用 TYPE(对象)代替。在 Oracle 中执行此类操作的方法是声明 Parent TYPE 和 Child TYPE,然后创建一个包含 PARENT 实例的表 - 类似于:

CREATE OR REPLACE TYPE PARENT AS OBJECT (...);

CREATE OR REPLACE TYPE CHILD UNDER PARENT (...);

CREATE TABLE PEOPLE OF PARENT;

由于 CHILD 是 PARENT 的子类型,因此应该可以将 CHILD 实例存储在 PEOPLE 表中。

分享和享受。

于 2013-07-07T14:42:04.690 回答