楼主,第一段有问题啊, List pars=new ArrayList(); StringBuilder sql=new StringBuilder()
.append("select s.studentid,s.studentname,s.schoolid,s.classid,case [fenke] when '0' then '公共科' when '1' then '理科' when '2' then '文科' end as fenke,s.gradeid,s.py")
.append(" from studentinfotbl s")
.append(" where 1=1 ")
;
if(studentid!=null && !studentid.equals(""))
{
sql.append(" and s.studentid like ?");
//pars.add("%"+studentid.trim()+"%");这里根本不是这样的,它得到的就是studentid.trim(),你应该在你的程序当中加上%才行,就跟你的下一段一样.ok?要么你就用sql.append(" and s.studentid like %?%");
不信你就用断点调试一下,你就会看到这里没有%出现,其实相当简单的一个问题,呵呵,其他的没有多看,希望楼主见谅,因为一看就是这里有问题.我经常做这中查询条件,呵呵,
}
if(schoolid!=null && !schoolid.equals(""))
{
sql.append(" and s.schoolid like ?");
//pars.add("%"+schoolid.trim()+"%");
}这样用list对象,同时输入2个查询条件就会报错
-------------------------------------------------------------------
改成这样就没问题了,不知道是为什么,大家解答一下 if(studentid!=null && !studentid.equals(""))
{
sql.append(" and s.studentid like '"+"%"+studentid.trim()+"%"+"'");
//pars.add("%"+studentid.trim()+"%");
}
if(schoolid!=null && !schoolid.equals(""))
{
sql.append(" and s.schoolid like '"+"%"+schoolid.trim()+"%"+"'");
//pars.add("%"+schoolid.trim()+"%");
.append("select s.studentid,s.studentname,s.schoolid,s.classid,case [fenke] when '0' then '公共科' when '1' then '理科' when '2' then '文科' end as fenke,s.gradeid,s.py")
.append(" from studentinfotbl s")
.append(" where 1=1 ")
;
if(studentid!=null && !studentid.equals(""))
{
sql.append(" and s.studentid like ?");
//pars.add("%"+studentid.trim()+"%");这里根本不是这样的,它得到的就是studentid.trim(),你应该在你的程序当中加上%才行,就跟你的下一段一样.ok?要么你就用sql.append(" and s.studentid like %?%");
不信你就用断点调试一下,你就会看到这里没有%出现,其实相当简单的一个问题,呵呵,其他的没有多看,希望楼主见谅,因为一看就是这里有问题.我经常做这中查询条件,呵呵,
}
if(schoolid!=null && !schoolid.equals(""))
{
sql.append(" and s.schoolid like ?");
//pars.add("%"+schoolid.trim()+"%");
}这样用list对象,同时输入2个查询条件就会报错
-------------------------------------------------------------------
改成这样就没问题了,不知道是为什么,大家解答一下 if(studentid!=null && !studentid.equals(""))
{
sql.append(" and s.studentid like '"+"%"+studentid.trim()+"%"+"'");
//pars.add("%"+studentid.trim()+"%");
}
if(schoolid!=null && !schoolid.equals(""))
{
sql.append(" and s.schoolid like '"+"%"+schoolid.trim()+"%"+"'");
//pars.add("%"+schoolid.trim()+"%");
解决方案 »
- 求助,页面不定时弹 Unknown 对话框,怎么查?
- java 切图处理 请高手帮我看查代码
- javascript如何获得复合 按键对应的keyCode 如:ctrl+enter
- 实验室信息管理系统
- 超链接到之前的页面时,如何清除密码框的数据
- 变量作用域(scope)的问题!
- 如果xml文件的内容与DTD格式不相同,SAXParser一定会抛出异常吗??
- 求助:ldap排序问题!
- lucene4.7删除索引失败
- linux中redisClien工具中key变灰色是什么意思?
- 选择题 下列有关 Servlet 的生命周期,说法不正确的是()。
- webwork result 结果中如何使用anchor锚点
颜色没有调出来,呵呵,
pars.add("%"+studentid.trim()+"%");这里根本不是这样的,它得到的就是studentid.trim(),你应该在你的程序当中加上%才行,就跟你的下一段一样.ok?要么你就用sql.append(" and s.studentid like %?%");
不信你就用断点调试一下,你就会看到这里没有%出现,其实相当简单的一个问题,呵呵,其他的没有多看,希望楼主见谅,因为一看就是这里有问题.我经常做这中查询条件,呵呵,
还可以这样写啊,又学了一招不过我的意思是list对象是不是有啥不好用的地方