首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ORA-00932在Java上的错误

ORA-00932在Java上的错误
EN

Stack Overflow用户
提问于 2017-12-06 10:47:14
回答 1查看 59关注 0票数 0

我有一个conclusionDao.java类来运行sql查询。

它有

代码语言:javascript
复制
private String getCriteria(GsSrvyRepConclusion Conclusion, boolean isUpdateStatement) {
        String criteriaStatement = "";
if(Conclusion.getRecommendation() != null){
            statement += getConnectorStatement(criteriaStatement, isUpdateStatement) " CONCLUSION.recommendation =:recommendation";
        }

recomandation定义为数据库中的CLOB数据类型。我只知道CLOB数据类型不能与查询上的"=“符号一起使用。

但是,当我把等号替换为"like“时,ORA-00932错误会转到ORA-00927,这是缺少等号错误。

你能给我一个关于这个问题的想法吗?这个问题可以用三元算子来解决,但我无法解决。

语句已经定义好了。我只需要改变;

代码语言:javascript
复制
CONCLUSION.recommendation =:recommendation
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-12 11:07:07

代码语言:javascript
复制
if(Conclusion.getRecommendation() != null){
            statement += getConnectorStatement(criteriaStatement, isUpdateStatement) " CONCLUSION.recommendation =:recommendation";
        }

应该写成

代码语言:javascript
复制
 if(Conclusion.getRecommendation() != null){
            statement += getConnectorStatement(criteriaStatement, isUpdateStatement) + ((isUpdateStatement) ? " CONCLUSION.recommendation =:recommendation " : " CONCLUSION.recommendation like :recommendation ");
        }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47672407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档