使用mybatis的项目,从MySQL数据库换成了Oracle数据库,驱动都修改完了,用MySQL时正常,换成Oracle报错

org.springframework.jdbc.BadSqlGrammarException:###Errorqueryingdatabase.Cause:java.s... org.springframework.jdbc.BadSqlGrammarException:
### Error querying database. Cause: java.sql.SQLException: ORA-00933: SQL 命令未正确结束

### The error may involve front.product.loadHotProductShowInSuperMenu-Inline
### The error occurred while setting parameters
### Cause: java.sql.SQLException: ORA-00933: SQL 命令未正确结束

; bad SQL grammar []; nested exception is java.sql.SQLException: ORA-00933: SQL 命令未正确结束
at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:98)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:65)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:345)
at $Proxy52.selectList(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:193)
at net.jeeshop.core.dao.BaseDao.selectList(BaseDao.java:108)
at net.jeeshop.services.front.product.dao.impl.ProductDaoImpl.loadHotProductShowInSuperMenu(ProductDaoImpl.java:92)
展开
 我来答
java_tang_java
2014-08-25 · TA获得超过244个赞
知道小有建树答主
回答量:170
采纳率:77%
帮助的人:93.9万
展开全部
Cause: java.sql.SQLException: ORA-00933: SQL 命令未正确结束

只有出现sql语法问题才会有这个提示。
更多追问追答
追问

这是报错开始的地方,帮我看看哪不对,谢谢!

追答
因为你的sql是拼接,所以很难辨认哪个地方会有问题。我建议你一个一个if去掉调试下,这样就能很快定位问题在哪个地方,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
charlycong
2014-08-25 · TA获得超过445个赞
知道小有建树答主
回答量:243
采纳率:0%
帮助的人:292万
展开全部
oracle 与mysql的 sql语句是有区别的。是不是因为这个原因
更多追问追答
追问

也许是吧,我已经把所有的limit换成rownum,而且能通过,我把开始报错的那部分贴出来看看。

它上面的内容都能加载出来,但是从这开始就报上面的错了。

追答
and t.name like CONCAT('%','${name}','%') 改成 and t.name like '%${name}%' 
oracle 里 CONCAT('%','${name}','%') 报错
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式