存储过程
存储过程及函数配置
sql数据集配置存储过程
在数据库中创建存储过程或函数
CREATE PROCEDURE `jmdemo`(name varchar(32))
BEGIN
-- 通过用户名查询列表
SELECT * FROM user
WHERE username = name;
END
创建数据集
1. 在设计界面,点击“数据集管理 ->SQL数据集”(操作如图7.11),进入SQL 数据集配置界面,如图1.1;
图1.1
2. 选择好数据源:
下方如果有表,会显示表名称
图1.2
调用存储过程
1. 在SQL 数据集配置界面,在报表SQL栏输入表达式 CALL name( ${param},...)
如图1.3;
name:存储过程名称
param:传入的参数1
...:代表后面可以写多个参数,如${name}
,中间用,
隔开
示例:
CALL jmdemo('${name}')
图1.1
2. 点击‘SQL解析’,如果有传参,会提示解析失败或数据为空 如图2.1;
图2.1
3. 输入参数默认值后,再次点击SQL解析,出现如下图效果,则解析正常如图3.1;
图3.1
字段会自动解析出来
附录
oracle存储过程的使用
需要存在输出游标
sys_refcursor
,且写在括号里面最后一个,xb
性别为参数,可以写多个,其中用逗号分开
CREATE OR REPLACE procedure jmtest(xb in VARCHAR2 ,out_result_cursor out sys_refcursor) is
begin
open out_result_cursor for
select ID,NAME,SEX from demo where SEX = xb;
end;
数据集页面写法参考如下:
CALL 存储过程名称(${param1},${param...},?)
${param}
参数,多个用逗号拼接,字符串需要有' ${param} '
单引号?
游标,需要在参数后面填写
CALL jmtest('${sex}',?)
点击sql解析
数据预览效果展示