dao层搜索功能sql语句
之前我在网上和各种资料所找到的搜索功能的sql语句是这样的
String sql = "SELECT * FROM stu WHERE name LIKE ’%?%‘";
并且完全可以在MySQL workbench查询中正常运行,但是在eclipse中却出现了这样的错误
Wrong number of parameters:expected 0, was given 1 Query: SELECT * FROM stu WHERE name LIKE ‘%?%’ Parameters: [张]
下面是正确的的sql语句
String sql = "SELECT * FROM stu WHERE name LIKE \"%\"?\"%\"";
会发现多出了好多“/”,
其实?代表的是一个sql参数,在java里面本身就是字符串,但%不同,‘%科%’
这里可以发现%和科是一个等级的,在java里面,?=“科”= sql里面的‘科’。所以%也得=‘%’=“%”
按我们的想法在java里面应该是这句String sql=“select * from categ