将数据表传递给oracle

本文关键字:oracle 数据表 | 更新日期: 2023-09-27 18:29:57

我需要将搜索条件作为数据表传递给oracle中的存储过程,并返回数据表以将其显示为报告。

因此,用户将输入参考号列表和客户名称列表,应用程序将显示该参考号和客户名称的所有详细信息作为报告。

我要用水晶报告和c#

我在存储过程中的问题是,如何传递数据表并基于它构建查询?

将数据表传递给oracle

您可以尝试以下方法:

create or replace type strtable as table of varchar2(500);
/
create or replace function my_func(a in strtable)
return varchar2 /* OR strtable OR something else */
as
begin
    ...
end;
/

select my_func( cast( multiset( SELECT ... FROM TABLE WHERE ... ) as strtable ) ) from dual;

此外,您可能还想阅读有关MULTISET、CAST、LISTAGG 的Oracle文档