BIRT调用oracle function

简介:

一.方法描述

主要是间接调用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如此调用的可行性。


本文转自 leizhimin 51CTO博客,原文链接:http://blog.51cto.com/lavasoft/8677,如需转载请自行联系原作者
相关文章
|
移动开发 JavaScript Oracle
Oracle根据汉字取拼音首字母的function
Oracle根据汉字取拼音首字母的function
5943 0
|
Oracle 关系型数据库 数据库
|
Oracle 关系型数据库
Oracle之:Function :getdate()
create or replace function getdate(sp_date varchar) return date is Result date; begin if LENGTH(sp_date) =10 then Result:=to_date(s...
1360 0
|
Oracle 关系型数据库
Oracle之:Function :getcurrdate()
getdate()函数连接请戳这里 create or replace function getcurrdate(i_date date) return date is v_date date; v_datestr varchar2(10); begin ...
972 0
|
Oracle 关系型数据库
Oracle之:Function :dateToNumber()
create or replace function dateToNumber(i_date in date) return number is result number ; begin result := TO_NUMBER(NVL(TO_CHAR(i...
1014 0
|
Oracle 关系型数据库
Oracle之:Function :numberToDate()
create or replace function numberToDate(i_date in number) return date is v_date number; result date ; begin v_date := i_da...
969 0
|
Oracle 关系型数据库
Oracle之:Function :func_float()
create or replace function func_float(i_value float) return number is v_index number := 0; v_str varchar2(1000); v_result number(...
718 0

热门文章

最新文章

推荐镜像

更多