javax.servlet.ServletException: SqlMapClient operation; bad SQL grammar []; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:   
--- The error occurred in config/T_ACCESS_COUNT_SqlMap.xml.  
--- The error occurred while applying a parameter map.  
--- Check the T_ACCESS_COUNT.insert-InlineParameterMap.  
--- Check the statement (update failed).  
--- Cause: java.sql.SQLException: ORA-01745: invalid host/bind variable name org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.extremecomponents.table.filter.AbstractExportFilter.doFilter(AbstractExportFilter.java:49)
cn.sh.ideal.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:34)问下,这个怎么解决啊?ibatis里面写的sql语句是正确的,百度、google里面没有找到合适的解决方案!

解决方案 »

  1.   

    有可能是ibatis里面的sqlMap.xml文件的sql语句多了一个#号吧。
      

  2.   

      
        <update id="update" parameterClass="cn.sh.ideal.ibatis.bean.TAccessCount" >
        update T_ACCESS_COUNT
        set COUNT = #count:NUMBER#
        where FK_REPOSITORY_ID = #fkRepositoryId:VARCHAR#
      </update>比如说上面的COUNT = #count:NUMBER#你一不小心写成了COUNT = ##count:NUMBER#呢?
      

  3.   

    你把 你的 config/T_ACCESS_COUNT_SqlMap.xml 下的 T_ACCESS_COUNT.insert-InlineParameterMap sql给贴出来看看。