ireport踩坑记录:动态参数
Posted 安之ccy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ireport踩坑记录:动态参数相关的知识,希望对你有一定的参考价值。
动态参数语法:$P!IN_PARAMS
静态参数的话,是这样的:$PIN_PARAMS,比动态参数语法 少了一个感叹号
如果我们原本的语句写这样的:
select * from mytable where id = #id; // id为入参
在ireport里,定义好入参IN_ID后,就可以在语句里这样写(注意大写):
select * from mytable where id = $PIN_ID
从前台获取入参后,就会拼接上去
比如前台输入1,语句就会变成
select * from mytable where id = 1
静态参数是必须要传的,如果前台不给IN_ID赋值,语句就会变成这样:
select * from mytable where id =
就会报错
动态参数更灵活一些,不一定要使用这个参数,但使用这个参数时,传入的是sql语句
语句依然是这样:
select * from mytable where id = #id; // id为入参
改成动态参数:
select * from mytable $P!IN_ID
使用IN_ID参数时,输入where id = 1
,就会拼接成:
select * from mytable where id = 1
不使用时,就直接是:
select * from mytable
重点是,使用动态参数,这个参数必须设置默认值,一般可以设置为空字符串,否则会报错,提示sql命令没有正常结束:
以上是关于ireport踩坑记录:动态参数的主要内容,如果未能解决你的问题,请参考以下文章