Java、Mysql使用Like
在Mysql的数据库编辑器中写代码如下:
select * from powerbar where knowledgecode like '101%')
上面的语句显示是对的
select * from powerbar where knowledgecode like '101''%'
也是对的,已经试验过了
但是在java代码中编写的语句如下:
select * from powerbar where knowledgecode like '?%' select * from powerbar where knowledgecode like ?% select * from powerbar where knowledgecode like ?'%'
以上三种前面两种全是错误的,最后一种查不出什么东西。
不知道是上面原因,我猜是%被当成一般的字符串了,不知道是否正确。
更改如下:
select * from powerbar where knowledgecode like concat('101','%')
用了mysql的字符串连接函数concat就可以了。
1 楼 void_coocoo 2010-02-04
一般用的时候是
sql = ” … like ? “;
ps.setString(1,aaaa + “%”);