java.sql.SQLSyntaxErrorException: ORA-00932: 数据类型不一致: 应为 BINARY, 但却获得 CHAR
今天写代码遇到的,检查了一下发现实际上是把null值作为参数了
遇到此类问题,需要检查传入的参数中是否有空值(null).
查询代码如下:
@Repository public interface OssDao extends JpaRepository<OssFileEntity, Long> { @Query(nativeQuery = true, value = " SELECT " + " \"uri\" " + " FROM " + " \"oss_file\" " + " WHERE " + " \"namespace\" = :namespace " + " AND \"prefix\" LIKE COALESCE (:prefix, '%%') " + " AND \"name\" LIKE COALESCE (:fileName, '%%') " ) List<String> findUriByCondition(@Param("namespace") String namespace, @Param("prefix") String prefix, @Param("fileName") String fileName);
}
为了做Oracle和MySQL兼容, 也是绞尽乳汁了
作者:习惯沉淀
如果文中有误或对本文有不同的见解,欢迎在评论区留言。
如果觉得文章对你有帮助,请点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
扫码关注一线码农的学习见闻与思考。
回复"大数据","微服务","架构师","面试总结",获取更多学习资源!