永洪社区

标题: 数据集传参问题 [打印本页]

作者: yhdata_b2JakRyF    时间: 2023-12-26 11:35
标题: 数据集传参问题

在where 后面传参,用?{@b}的话   ,再拖出去个筛选框比如调查期,就报错 sql异常

用?{b}的话不会报错,但是参数就传不到数据集了,这是怎么回事

作者: yhdata_lyaa    时间: 2023-12-26 13:13
报啥错,你参考这个看看https://yonghongtechonline.udesk.cn/question/226409
作者: yhdata_b2JakRyF    时间: 2023-12-26 15:11
yhdata_lyaa 发表于 2023-12-26 13:13
报啥错,你参考这个看看https://yonghongtechonline.udesk.cn/question/226409

看着像是 如果是?{@b}  那么b为空的话就会报错
但是用?{b}参数又传不过去
作者: yhdata_lyaa    时间: 2023-12-26 15:47
yhdata_b2JakRyF 发表于 2023-12-26 15:11
看着像是 如果是?{@b}  那么b为空的话就会报错
但是用?{b}参数又传不过去

不能?{b}这么写,?{@b} 是对的,但是要设置默认值,不可以为空。

https://www.yonghongtech.com/rea ... paramindataset.html
<a></a>中包含?{a}形式
例如<a>where city=?{a}</a>,参数可以不传值
作者: yhdata_yzm    时间: 2023-12-26 15:47
不用@的话 是preparestatement setvalue  
走预编译的时候, 比如 订单ID=?这种,我们并不会直接给走setInt,而是全部走setObject。  如果数据库那边对于setObject给进来的值的类型,不是一次性处理掉,而是每次用到的时候在处理,对性能损耗就会特别大。 有的库处理得好一些,有的库就差很多。
像传不过去这种不正常呢




欢迎光临 永洪社区 (http://club.yonghongtech.com/) Powered by Discuz! X3.4