①提出问题
一般情况下我们进行精确查询,sql语句类似:select * from table where name =?,然后调用PreparedStatement的setString等方法给?指定值。那么模糊查询的时候应该怎么写呢?
②尝试解决问题
尝试了在SQL中这样写参数:select *from customer where name like ‘%?%’。 然后设置请求参数,结果发现报错!
③思考问题
被包含在了单引号中,PreparedStatement并不视它为一个参数。所以会进行报错.
④再次尝试解决问题
后来上网查了相关的一些资料,发现可以这样写select * from table where name like?;但是在指定参数的时候把?指定为”%”+name+”%”,name是指定的查询条件。
⑤解决问题