在MYSQL 数据库中我有一个表名搜索。 当我编写此查询时,它已成功执行。
"select * from 'search' where path like %overview%"
但是当我用java写的时候:
String query="SELECT path FROM `search` WHERE path like %?% ";
java.sql.PreparedStatement st=con.prepareStatement(query);
st.setString(1,textField.getText() );
ResultSet rs=st.executeQuery();
它不工作并显示错误:
com.mysql.jdbc.exception.jdbc4.MySQLSystaxErrorException: you have an error in sql syntax; check the manual that corresponds to your Mysql server version for the right Syntax to use near '%'overview'%' at line 1
最佳答案
String query="SELECT path FROM `search` WHERE path like ? ";
java.sql.PreparedStatement st=con.prepareStatement(query);
st.setString(1,"%"+ textField.getText() + "%" );
ResultSet rs=st.executeQuery();
你可以试试上面的代码
关于java - 无法在 Java 中执行 "like"查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29968646/