问题描述
在使用JDBC 预编译执行语句时,遇到一个问题,那就是在含有LIKE的查询语句时,我到底怎么使用匹配符%
、_
呢。
如:
SELECT * FROM "+LQ_USERS+" WHERE "+USER_LOGIN+" LIKE ?
问题分析
我们先看看我们要实现的结果:
SELECT * FROM lq_users WHERE user_login LIKE "%2%";
既然这样,我们知道,PreparedStatement
类的setString
方法会自动将设置的字符串在SQL语句中用引号括起来,所以,明白了。
问题解决
既然如此,如此这般即可:
preparedStatement.setString(1,"%"+snapshot+"%");
在调用的时候一起和值拼接在一起就好了。
请务必原谅我的啰嗦,我记性太差,我怕回头我再复习的时候吃力。-_-