База данных Oracle OR: почему функция ref() получает объект вместо OID?

Я использую Oracle (11g) и инструмент SQL Developer (v. 4.1.3). У меня есть объектно-реляционная база данных.

Я сделаю это:

CREATE TYPE emp_person_typ AS OBJECT (
    name VARCHAR2(30), 
    manager REF emp_person_typ ); 
/
CREATE TABLE emp_person_obj_table OF emp_person_typ; 
INSERT INTO emp_person_obj_table 
    SELECT emp_person_typ ('Bob Jones', REF(e)) 
    FROM emp_person_obj_table e 
   WHERE e.name = 'John Smith';

select * from emp_person_obj_table e;

И я получаю:

NAME          MANAGER                                       
---------- --------------------------------------------------
John Smith                                                  
Bob Jones     EMP_PERSON_TYP('John Smith', NULL)

Однако в manager столбец, а не объект (EMP_PERSON_TYP()) Я должен получить OID,

Я предполагаю, что, возможно, это проблема конфигурации, возможно, мне следует настроить SQL Developer определенным образом, но я не знаю.

Заранее спасибо.

0 ответов

Другие вопросы по тегам