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'%?%'中给?赋值,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。