您的位置:首页 > 数据库 > Oracle

BIRT调用oracle function

2006-11-10 16:49 232 查看
[align=center]BIRT调用oracle function[/align]
一.方法描述
主要是间接调用function .该function的返回值是一个自定义类型的内存表。在birt中如下调用:select * from function_name(?,?.....);
二.例子如下:
(1) 数据库中有如下一张表:
表名:users
字段:id,name
(2) 首先创建一个type;
create or replace type t_test as object(
id varchar(10),
name varchar2(60)
);
(3) 创建一个以上一步创建的type为基类型的内存表类型如下:
create or replace type t_test_table as table of t_test;
(4) 创建如下的一个存储过程:
create or replace function testbirt2 return
t_test_table
as

t t_test_table:=t_test_table();
cursor mycursor is
select id,name
from users;
uid varchar(10);
uname users.name%type;
begin
open mycursor;
loop
fetch mycursor
into uid,uname;
exit when mycursor%notfound;
t.extend();
t(t.count) := t_test(uid,uname);
end loop;
close mycursor;
return t;
end testbirt2;
(5) 在birt中如下调用:
Select * from table(testbirt2);
三.即可预览到结果集。此例子相当简单,只是为了证明birt如此调用的可行性。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: