2009-12-05 2 views
2

Oracle & объекты: (?, Используя цикл и)типа Oracle сравнить

У меня есть таблица, которая содержит более одного типа объекта (с помощью наследования), но я хочу знать фактический тип каждого. Есть ли функция, например, isInstanceOf()?

плз дают пример

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

ответ

0

CREATE OR REPLACE TYPE TEST_OBJ AS OBJECT (
    field1 VARCHAR2(20), 
    field2 NUMBER(10) 
); 

Тогда вы можете использовать тип SYS.ANYDATA.


DECLARE 
    t_test_obj TEST_OBJ; 
    v_anydata SYS.ANYDATA; 
BEGIN 
    t_test_obj := TEST_OBJ('ABC',123); 
    v_anydata := SYS.ANYDATA.ConvertObject(t_test_obj); 
    DBMS_OUTPUT.PUT_LINE('OBJECT TYPE IS : '||v_anydata.GetTypeName()); 
END; 
Смежные вопросы