PreparedStatement模糊查询问题

在使用PreparedStatement进行MySql模糊查询时,遇到一个问题
SELECT COUNT(*) FROM TABLE WHERE BLOG LIKE ?
是可以查询成功的,但是加入了模糊匹配后
SELECT COUNT(*) FROM TABLE WHERE BLOG LIKE "%?%"
却总是查询报错,后来发现sql语句还是需要写为SELECT COUNT(*) FROM TABLE WHERE BLOG LIKE ?,同时需要把模糊匹配的内容在PreparedStatement的set方法中拼接完成,且注意PreparedStatement索引是从1开始的。
例如:

String sql = "SELECT COUNT(*) FROM TABLE WHERE BLOG LIKE ?";
pstmt = con.prepareStatement(sql);
pstmt.setString(1, "%" + content + "%");
发布了16 篇原创文章 · 获赞 0 · 访问量 810

猜你喜欢

转载自blog.csdn.net/shengruxiahua2571/article/details/102683100