Java 上的 ORA-00932 错误
ORA-00932 error on Java
我有一个 conclusionDao.java class 到 运行 sql 的查询
有
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 缺少等号错误。
你能给我一些关于这个问题的想法吗?使用三元运算符可以解决问题,但我无法解决。
声明已经定义。我只需要改变;
CONCLUSION.recommendation =:recommendation
if(Conclusion.getRecommendation() != null){
statement += getConnectorStatement(criteriaStatement, isUpdateStatement) " CONCLUSION.recommendation =:recommendation";
}
应该写成
if(Conclusion.getRecommendation() != null){
statement += getConnectorStatement(criteriaStatement, isUpdateStatement) + ((isUpdateStatement) ? " CONCLUSION.recommendation =:recommendation " : " CONCLUSION.recommendation like :recommendation ");
}
我有一个 conclusionDao.java class 到 运行 sql 的查询
有
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 缺少等号错误。
你能给我一些关于这个问题的想法吗?使用三元运算符可以解决问题,但我无法解决。
声明已经定义。我只需要改变;
CONCLUSION.recommendation =:recommendation
if(Conclusion.getRecommendation() != null){
statement += getConnectorStatement(criteriaStatement, isUpdateStatement) " CONCLUSION.recommendation =:recommendation";
}
应该写成
if(Conclusion.getRecommendation() != null){
statement += getConnectorStatement(criteriaStatement, isUpdateStatement) + ((isUpdateStatement) ? " CONCLUSION.recommendation =:recommendation " : " CONCLUSION.recommendation like :recommendation ");
}