Oracle类型比较

时间:2009-12-05 22:43:04

标签: oracle object types

Oracle&对象:

我有一个包含多种类型对象的表(通过使用继承),但我想 知道每个的实际类型(使用循环和?)。这里有isInstanceOf()这样的函数吗?

plz提供了一个例子

先谢谢

2 个答案:

答案 0 :(得分:3)

你想要的是OF TYPE条款。

答案 1 :(得分: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;