oracle中是否存在用于存储用户定义类型的元数据表?

时间:2011-04-05 14:48:56

标签: oracle types metadata

如果有人做了类似的事情:

CREATE OR REPLACE TYPE some_type AS OBJECT(whatever NUMBER);

然后我做了类似的事情:

SELECT type_name FROM some_magic_table WHERE type_name = 'some_type';

我应该合理地期望oracle能像这样工作吗?

我不希望一直依赖Oracle SQL Developer界面来处理眼球类型,这就是原因。

我正在使用10g btw。

感谢。

2 个答案:

答案 0 :(得分:5)

是的,它被称为USER_TYPES(我想是一个SYS视图)。

尝试此操作(如果类型是由运行此查询的架构/用户创建的):

SELECT * 
  FROM user_types 
 WHERE type_name = 'SOME_TYPE'; 

要查看您有权访问架构的TYPES:

SELECT * 
  FROM all_types 
 WHERE type_name = 'SOME_TYPE'; 

答案 1 :(得分:5)

--
-- The types
--
SELECT *
FROM   ALL_TYPES

--
-- Their attributes
--
SELECT *
FROM   ALL_TYPE_ATTRS