首页 > 数据库技术 > 详细

java mysql prepareStatement模糊查询like使用注意

时间:2015-03-23 14:49:01      阅读:4696      评论:0      收藏:0      [点我收藏+]

今天在使用mysql 的like语句是,发现prepareStatement的like语句和一般的=写法有一样。

当要使用prepareStatement的like查询时,按照一般写法,都会写成:

String sql = "select * from tablename like ‘%?%‘";

String sqlParasValue = "2015-03-23";

pStmt =conn.prepareStatement(sql);

pStmt.setString(1, sqlParasValue);

pStmt.execute();

结果发现获取不了数据,反而会出现sql参数异常。

在网上百度了下,好多人也遇到了这个问题,原来写法不太一样。

应该这么写:

String sql = "select * from tablename like ?";

String sqlParasValue = "%" + "2015-03-23" + "%";

pStmt =conn.prepareStatement(sql);

pStmt.setString(1, sqlParasValue);//会自动添加单引号

pStmt.execute();

这样就能获取数据了。

 

java mysql prepareStatement模糊查询like使用注意

原文:http://www.cnblogs.com/jecyhw/p/4359528.html

(2)
(2)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!