Sql语句中关于如何在LIKE'%?%'中给?赋值

ct = new ConnDB().getConn();
			ps = ct.prepareStatement("select * from news where keyWords like‘%?%‘");
			ps.setString(1, search);
这样的方式给like里的问号赋值,会报错
Parameter index out of range (1 > number of parameters, which is 0).
就是说?它代表的仅仅是一个字符,而不是一个特殊符号(因为它位于单引号里面),这样
ps.setString(1, search)中的这个search就不知道传给谁了。但是如果换成这样就可以。

ct = new ConnDB().getConn();
ps = ct.prepareStatement("select * from news where keyWords like‘%"+search+"%‘");





主要是ike后面的东西换了。?换成“+search+”

Sql语句中关于如何在LIKE'%?%'中给?赋值,布布扣,bubuko.com

Sql语句中关于如何在LIKE'%?%'中给?赋值

上一篇:C#高性能大容量SOCKET并发(零):代码结构说明


下一篇:mysql的事务运作