org.hibernate.hql.ast.QuerySyntaxException: unexpected token: 8 near line 1, column 69 [from cn.uoleem.model.MemberInfo as m where mid(cardmember2,11,2) = 08 and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.sex=? and m.userId=? and mid(cardmember2,7,4)?]
Struts has detected an unhandled exception: Messages: unexpected token: 8 near line 1, column 69 [from cn.uoleem.model.MemberInfo as m where mid(cardmember2,11,2) = 08 and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.sex=? and m.userId=? and mid(cardmember2,7,4)?]
unexpected token: 8 near line 1, column 69 [from cn.uoleem.model.MemberInfo as m where mid(cardmember2,11,2) = 08 and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.sex=? and m.userId=? and mid(cardmember2,7,4)?]; nested exception is org.hibernate.hql.ast.QuerySyntaxException: unexpected token: 8 near line 1, column 69 [from cn.uoleem.model.MemberInfo as m where mid(cardmember2,11,2) = 08 and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.sex=? and m.userId=? and mid(cardmember2,7,4)?]
File: org/hibernate/hql/ast/QuerySyntaxException.java
Line number: 31
--------------------------------------------------------------------------------Stacktraces
org.springframework.orm.hibernate3.HibernateQueryException: unexpected token: 8 near line 1, column 69 [from cn.uoleem.model.MemberInfo as m where mid(cardmember2,11,2) = 08 and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.sex=? and m.userId=? and mid(cardmember2,7,4)?]; nested exception is org.hibernate.hql.ast.QuerySyntaxException: unexpected token: 8 near line 1, column 69 [from cn.uoleem.model.MemberInfo as m where mid(cardmember2,11,2) = 08 and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.sex=? and m.userId=? and mid(cardmember2,7,4)?]
org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:657)
You are seeing this page because development mode is enabled. Development mode, or devMode, enables extra debugging behaviors and reports to assist developers. To disable this mode, set: struts.devMode=falsein your WEB-INF/classes/struts.properties file.
吧完整代码贴出来看下
public List<MemberInfo> query(String membername,String telephone,String endtelphone,String likeTaste,String address,String month,int xb,int 1,int 2,String memberids,int userId)
{
Object[] params;
membername=membername.replaceAll("'","");
List<MemberInfo> memberInfoList = null;
String strmonth="";
if("".equals(month)||month==null)
{
strmonth="like '%'";
}else
{
strmonth="= "+month;
}
if(xb==0)
{
if(1==0)
{
if(!"".equals(memberids))
{
if("".equals(memberids))memberids="0";
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",userId,2};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.id in ("+memberids+") and m.userId=? and mid(cardmember2,7,4)<?",params);
}
else
{
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",userId,2};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.userId=? and mid(cardmember2,7,4)<?",params);
}
}
else if(1==-1)
{
if(!"".equals(memberids))
{
if("".equals(memberids))memberids="0";
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",userId};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.id in ("+memberids+") and m.userId=?",params);
}
else
{
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",userId};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.userId=?",params);
}
}
else
{
if(!"".equals(memberids))
{
if("".equals(memberids))memberids="0";
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",userId,1,2};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.id in ("+memberids+") and m.userId=? and mid(cardmember2,7,4)<? and mid(cardmember2,7,4)>?",params);
}
else
{
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",userId,1,2};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.userId=? and mid(cardmember2,7,4)<? and mid(cardmember2,7,4)>?",params);
}
}
}else
{
if(1==0)
{
if(!"".equals(memberids))
{
if("".equals(memberids))memberids="0";
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",xb,userId,2};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.id in ("+memberids+") and m.sex=? and m.userId=? and mid(cardmember2,7,4)<?",params); }
else
{
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",xb,userId,2};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.sex=? and m.userId=? and mid(cardmember2,7,4)<?",params); }
}
else if(1==-1)
{
if(!"".equals(memberids))
{
if("".equals(memberids))memberids="0";
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",xb,userId};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.id in ("+memberids+") and m.sex=? and m.userId=?",params); }
else
{
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",xb,userId};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.sex=? and m.userId=?",params); }
}
else
{
if(!"".equals(memberids))
{
if("".equals(memberids))memberids="0";
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",xb,userId,1,2};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.id in ("+memberids+") and m.sex=? and m.userId=? and mid(cardmember2,7,4)<? and mid(cardmember2,7,4)>?",params); }else
{
params=new Object[]{"%"+membername+"%","%"+telephone+"%","%"+endtelphone+"%","%"+likeTaste+"%","%"+address+"%",xb,userId,1,2};
memberInfoList=find("from MemberInfo as m where mid(cardmember2,11,2) "+strmonth+" and m.membername like ? and m.telephone like ? and mid(m.telephone,11,1) like ? and m.likeTaste like ? and m.address like ? and m.sex=? and m.userId=? and mid(cardmember2,7,4)<? and mid(cardmember2,7,4)>?",params); }
}
}
if(memberInfoList!=null&&memberInfoList.size()>=1){
return memberInfoList;
}
return null;
}
这个函数怎么回事?
substring
建议你将那些拼出来的hql语句打印到控制台看一下,这样比较容易发现哪里拼错了。