小编Dam*_*nić的帖子

由于 bytea 转换错误,使用 Kotlin 可为空类型时本机 JPA 查询不起作用

我使用KotlinSpring BootSpring DataHibernatePostgresql

我们创建了一个存储库类,它扩展JpaRepository并发现如果提供可为空的参数,本机查询将不起作用。

在此示例中,isInternal如果我们还不知道该信息(与我们的数据库中的信息相同),则参数可以是 true、false 或 null。

    @Query(
        nativeQuery = true,
        value = "SELECT * FROM story WHERE is_internal = :isInternal",
        countQuery = "SELECT COUNT(*) FROM story WHERE is_internal = :isInternal"
    )
    fun findEmployeeStories(
        @Param("isInternal") isInternal: Boolean?,
        pageable: Pageable
    ): Page<StoryEntity>
Run Code Online (Sandbox Code Playgroud)

此查询导致:

org.postgresql.util.PSQLException: ERROR: operator does not exist: boolean = bytea
  Hint: No operator matches the given name and argument type(s). You might need to …
Run Code Online (Sandbox Code Playgroud)

hibernate jpa spring-data spring-data-jpa kotlin

5
推荐指数
0
解决办法
642
查看次数

标签 统计

hibernate ×1

jpa ×1

kotlin ×1

spring-data ×1

spring-data-jpa ×1