怎么根据控件值修改sql语言

我想根据下拉框的值,进行判断,写出sql语言,执行查询,例如当下拉框为姓名时,sql 语言为 select * from 信息表 where 姓名=对应文本框输入的值。如果下拉框选择的是出生日期 sql语句为 select * from 信息表 where 出生日期=对应文本框输入的值。这个怎么实现呢?1674979507148.jpg

FineReport 帆软用户p9k8MX4NIW 发布于 2023-1-29 16:05
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
YmengLv5中级互助
发布于2023-1-29 16:35

SELECT *

FROM 信息表

WHERE ${IF(LEN(姓名下拉框参数)!=0,"姓名='"+姓名参数+"'",IF(LEN(日期下拉框参数)!=0,"出生日期='"+日期参数+"'","1=2"))}

最佳回答
0
runnerLv7资深互助
发布于2023-1-29 16:07

${if(参数='a','

select  * FROM a表

',' ')}

${if(参数='b','

select  * FROM b表

',' ')}

最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-1-29 16:08

${if(下拉框=="姓名","姓名的SQL","生日的SQL")}

  • 帆软用户p9k8MX4NIW 帆软用户p9k8MX4NIW(提问者) 控件的值怎么获取,是combox.getvalue()?
    2023-01-30 11:30 
  • Z4u3z1 Z4u3z1 回复 帆软用户p9k8MX4NIW(提问者) SQL里面直接用控件的 控件名称,比如上面公式中的 下拉框改成 控件名称就行了
    2023-01-30 11:32 
  • 帆软用户p9k8MX4NIW 帆软用户p9k8MX4NIW(提问者) 这个我刚才试了,会识别成参数,然后需要确定值才行
    2023-01-30 11:50 
  • Z4u3z1 Z4u3z1 回复 帆软用户p9k8MX4NIW(提问者) 对的啊,根据同名的控件传递值,SQL数据集判断执行不同的SQL语句
    2023-01-30 11:51 
  • 帆软用户p9k8MX4NIW 帆软用户p9k8MX4NIW(提问者) 回复 Z4u3z1 SELECT * FROM dbo.[employee_info] WHERE ${if(comboBox0=\"姓名\",\"ename=\"+comboBox1,\"1=1\")} 数据集里面我是这样写的
    2023-01-30 11:56 
  • 3关注人数
  • 333浏览人数
  • 最后回答于:2023-1-29 16:35
    请选择关闭问题的原因
    确定 取消
    返回顶部