论坛首页 入门技术论坛

[提问]HQL语句问题,报错:unexpected AST node:

浏览 9971 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-12-16  
dao.updateByQuery("update TbapStructureDetail  set fieldNameEn=? " +
					"where trim(fieldNameEn)=? and textName in " +
					"(select  child.textOutput as childTextOutput " +
					"from TbapTableRequest child, TbapTableRequest father " +
					"where trim(father.sourceSystem)=? and trim(father.tableNameEn)=? " +
					"and trim(child.textInput)=trim(father.textOutput) )",
					new Object[]{newFieldName,oldFieldName,systemName,oldTableName});


报错信息:
引用
Caused by: org.springframework.orm.hibernate3.HibernateQueryException: unexpected AST node: ( [update TbapStructureDetail set fieldNameEn=? where trim(fieldNameEn)=? and textName in (select  father.textOutput as fatherTextOutput from cn.ccb.metadata.app.bo.TbapTableRequest child, cn.ccb.metadata.app.bo.TbapTableRequest father where trim(father.sourceSystem)=? and trim(father.tableNameEn)=? and trim(child.textInput=father.textOutput) and trim(child.sourceSystem)=?) ]; nested exception is org.hibernate.hql.ast.QuerySyntaxError: unexpected AST node: ( [update TbapStructureDetail set fieldNameEn=? where trim(fieldNameEn)=? and textName in (select  father.textOutput as fatherTextOutput from cn.ccb.metadata.app.bo.TbapTableRequest child, cn.ccb.metadata.app.bo.TbapTableRequest father where trim(father.sourceSystem)=? and trim(father.tableNameEn)=? and trim(child.textInput=father.textOutput) and trim(child.sourceSystem)=?) ]
at org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:621)
at org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:230)
at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:315)
at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:287)
at cn.ccb.metadata.app.common.BaseDAO.updateByQuery(BaseDAO.java:538)
at cn.ccb.metadata.app.bs.importExcel.ImportExcelService.upDateModel(ImportExcelService.java:2943)
at cn.ccb.metadata.app.bs.importExcel.ImportExcelService.GetExcelList(ImportExcelService.java:197)
at cn.ccb.metadata.app.ucc.importExcel.ImportExcelUCC.SaveExcel(ImportExcelUCC.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:155)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:57)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:174)
at $Proxy11.SaveExcel(Unknown Source)
at cn.ccb.metadata.app.bb.importExcel.UploadBB.insertFiles(UploadBB.java:90)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:129)
... 38 more
Caused by: org.hibernate.hql.ast.QuerySyntaxError: unexpected AST node: ( [update TbapStructureDetail set fieldNameEn=? where trim(fieldNameEn)=? and textName in (select  father.textOutput as fatherTextOutput from cn.ccb.metadata.app.bo.TbapTableRequest child, cn.ccb.metadata.app.bo.TbapTableRequest father where trim(father.sourceSystem)=? and trim(father.tableNameEn)=? and trim(child.textInput=father.textOutput) and trim(child.sourceSystem)=?) ]
at org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:63)
at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:196)
at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:130)
at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:83)
at org.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:421)
at org.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:824)
at org.hibernate.impl.SessionImpl.executeUpdate(SessionImpl.java:810)
at org.hibernate.impl.QueryImpl.executeUpdate(QueryImpl.java:89)
at cn.ccb.metadata.app.common.BaseDAO$7.doInHibernate(BaseDAO.java:546)
at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:310)
... 60 more
Caused by: <AST>:0:0: unexpected AST node: (
at org.hibernate.hql.antlr.HqlSqlBaseWalker.logicalExpr(HqlSqlBaseWalker.java:1407)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.logicalExpr(HqlSqlBaseWalker.java:1327)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.logicalExpr(HqlSqlBaseWalker.java:1324)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.whereClause(HqlSqlBaseWalker.java:599)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:404)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.collectionFunctionOrSubselect(HqlSqlBaseWalker.java:3926)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.inRhs(HqlSqlBaseWalker.java:3836)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.comparisonExpr(HqlSqlBaseWalker.java:3501)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.logicalExpr(HqlSqlBaseWalker.java:1399)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.logicalExpr(HqlSqlBaseWalker.java:1327)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.whereClause(HqlSqlBaseWalker.java:599)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.updateStatement(HqlSqlBaseWalker.java:245)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:160)
at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:189)
... 68 more
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics