你能帮我解决我的问题吗?我在表中遇到了一个我不熟悉的字段类型 - T$ACTION_REAL_TABLE,并且该表无法通过 SELECT 工作,尽管 VIEWS 与该表工作相关。所有这一切都是通过 PL SQL Developer、对象 - 数据库链接访问远程数据库来实现的
你可以从数据字典中找出它是什么:
SELECT object_name, object_type
FROM USER_OBJECTS
WHERE object_name = 'T$ACTION_REAL_TABLE';
可能输出:
OBJECT_NAME | 对象类型 |
---|---|
T$ACTION_REAL_TABLE | 类型 |
或者,如果它不在您自己的模式中,您可以查询
ALL_OBJECTS
:
SELECT owner, object_name, object_type
FROM ALL_OBJECTS
WHERE object_name = 'T$ACTION_REAL_TABLE';
可能会输出:
业主 | OBJECT_NAME | 对象类型 |
---|---|---|
SCHEMA_NAME | T$ACTION_REAL_TABLE | 类型 |
我使用以下方法创建了该对象:
CREATE TYPE T$ACTION_REAL_TABLE IS TABLE OF VARCHAR2(42);
因此数据字典查询将其显示为
TYPE
。如果您是这种情况,那么您可以使用以下方式获取更多详细信息:
SELECT type_name, typecode
FROM USER_TYPES
WHERE type_name = 'T$ACTION_REAL_TABLE';
我的类型输出:
TYPE_NAME | 类型代码 |
---|---|
T$ACTION_REAL_TABLE | 收藏 |
这告诉您,对于我创建的类型,它是一个集合(数组)数据类型(您的数据类型可能不同)。
或者,如果它不在您自己的模式中:
SELECT owner, type_name, typecode
FROM ALL_TYPES
WHERE type_name = 'T$ACTION_REAL_TABLE';
哪个输出:
业主 | TYPE_NAME | 类型代码 |
---|---|---|
SCHEMA_NAME | T$ACTION_REAL_TABLE | 收藏 |