You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle XMLTYPE列查询报错java.sql.SQLException: Invalid column type

Oracle XMLTYPE列在Kotlin代码中查询报错:Invalid column type

问题场景

我使用Oracle数据库,其中某列类型为XMLTYPE。在控制台执行以下查询语句时,能正常返回该列的XML内容:

SELECT DATA_RECEIVED 
FROM schema.taxCard
WHERE FNR = (?) AND result = 'taxCardOK'

但在Kotlin代码中执行该查询时,抛出以下错误:

java.sql.SQLException: Invalid column type
at oracle.jdbc.driver.NamedTypeAccessor.getSQLXML(NamedTypeAccessor.java:438)
at oracle.jdbc.driver.OracleResultSetImpl.getSQLXML(OracleResultSetImpl.java:1251)
at com.zaxxer.hikari.pool.HikariProxyResultSet.getSQLXML(HikariProxyResultSet.java)

我的Kotlin实现代码

fun Connection.hentSkattekortPaFnr(
    fnr: String
): String {
   val statement =  prepareStatement(
        """
            SELECT DATA_RECEIVED 
            FROM schema.taxCard
            WHERE FNR = (?) AND result = 'taxCardOK'
        """.trimIndent()
    ).apply {
        setString(1, fnr)
    }
    val resultSet = statement.executeQuery()
    val xml = resultSet.asSequence { resultSet.getSQLXML(1) }.first()
    return xml.string
}

fun <T> ResultSet.asSequence(extract: () -> T ) : Sequence<T> = generateSequence{
    if (this.next()) extract() else null
}

疑问

请问我哪里操作出错了?


内容的提问来源于stack exchange,提问作者user16269092

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 01:20:38