我在我的项目中使用spring和hibernate。这是我的查询。当我执行此查询时,我从DB获取数据。但是,如果我像这样构建查询,我将获得0条记录。
String fullname1 = "this is my String";
select name,gender from account where fullname='fullname1';
如果我创建这样的查询,我将获取数据。但fullname1
不是静态数据。
select name,gender from account where fullname like '%this%';
问题是,如果我的fullname1只有一个单词,那么我将获得正确的数据。如果它有多个单词,我无法获取数据。
任何人都可以建议我在这种情况下如何构建查询框架。
答案 0 :(得分:-1)
尝试将您的字符串连接到像这样的搜索
select name,gender from account where fullname like '%' + yourVariable + '%';
假设yourVariable
包含您要搜索的字符串。
修改强>
OP在评论中证实,对他/她有用的查询是:
select name,gender from account where fullname='" + fullname1+ "'";
此外,您的查询很容易出现SQL注入。因此最好使用Prepared statement。