0

我们有以下 SQL 查询:

select Resa.ResID, Avgångdatum, Avgångtid, AvgångStad, AnkomstTid, AnkomstDatum, AnkomstStad, AntalPlatser, Kostnad,

    (select sum(Bokning.AntalBiljetter) from Bokning where Bokning.ResID = Resa.ResID) as EnkelBiljetter,

    (select sum(Bokning.AntalBiljetter) from Bokning where Resa.ResID in
        (select PaketResa.ResID from PaketResa where PaketResa.PaketID in
            (select PaketID from PaketResa where PaketResa.PaketID = Bokning.PaketID))) as PaketBiljetter

from Resa;

当我们尝试在 java 中获取列“Enkelbiljetter”和“PaketBiljetter”时,使用

Integer.parseInt(result.getObject("PaketBiljetter").toString()

它返回一个空指针异常。我们尝试useOldAliasMetadataBehavior=true在连接语句中添加“?”,但结果是一样的。也不会将 columnindex(10 和 11)放入 getObject 方法中。我们使用的是 5.1.19 JDBC 驱动程序。有什么建议么?

4

1 回答 1

2

它可能是您的,也可能是result返回getObject(...)一个空指针。既然有一种getInt()方法,你应该先试试这个:

result.getInt("PaketBiljetter")

看看会发生什么。

于 2012-10-16T08:30:18.577 回答