如何在oracle 10g中获取行的对象标识符?

时间:2015-10-02 17:31:09

标签: oracle ordbms

我是使用Oracle 10g express版的ORDBMS新手,我必须获取对象表中每一行的对象标识符。我正在使用下面的例子。

CREATE TYPE person AS OBJECT(
name VARCHAR2(20)
);

CREATE TABLE person_table OF person;
INSERT INTO person_table VALUES ( person('Test') );

已成功创建Type person和Table person_table。插入行,我可以使用

检索行
SELECT * from person_table;

但执行

SELECT REF(p) FROM person_table p;

给出以下错误:

ORA-00932: inconsistent datatypes: expected NUMBER got REF SYS.PERSON

如何获取表格每行的对象标识符?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我看到错误是指SYS.PERSON。您是否以SYS用户身份创建了对象和表?如果是这样,请尝试将其创建为“普通”用户,而不是SYS用户。