"bdate like '#{date}%' and  ..."

最开始这样写的· 将传入的参数和%用单引号包起来,但是这会报错

java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).

查阅资料后发现不能使用单引号将占位参数包起来,这样编译后的结果就是  like '?%' 即把占位的“?”作为了参数

 

然后我想到把通配符加在参数里面传进来,如下所示

"bdate like '#{date}' and  ..."

参数为 "\"2014-04%\""

但是依旧出现异常

通过查阅资料后找到如下解决办法:

1:只把%用引号包起来

"bdate like #{date}\"%\" and  ..."

2: 使用$拼接参数

"bdate like '${date}%' and  ..."

 

相关文章:

  • 2021-08-04
  • 2021-09-23
  • 2021-08-08
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2023-03-18
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案