【发布时间】:2015-06-15 11:39:47
【问题描述】:
是否有一个 oracle 查询,我可以使用它来获取返回一个表的 oracle 函数的详细信息,我在其中查找该表的信息,例如记录名称,但主要是该记录中的列及其类型。
示例函数:
create or replace
function return_table return t_nested_table AS
v_ret t_nested_table;
begin
v_ret := t_nested_table();
v_ret.extend;
v_ret(v_ret.count) := t_col(1, 'one');
v_ret.extend;
v_ret(v_ret.count) := t_col(2, 'two');
v_ret.extend;
v_ret(v_ret.count) := t_col(3, 'three');
return v_ret;
end return_table;
使用类型
create or replace
type t_col as object (
i number,
n varchar2(30)
);
create or replace
type t_nested_table as table of t_col;
只知道所有者(系统)和对象名称(return_table),我想执行一个查询,它将为我返回 t_col 的信息。 列的名称(i,n)和类型(number,varchar2)
我不能只自己执行查询,因为在某些情况下,该函数可能需要输入,而当我试图仅获取列信息时,这些输入是未知的
我将在 C# .Net 中执行此查询
【问题讨论】:
-
我觉得可以加入系统视图:all_arguments和all_type_attrs。