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()

nullpointerexception を返します。useOldAliasMetadataBehavior=true"? " を connection-statement に追加しようとしましたが、結果は同じです。getObject メソッドに columnindex (10 と 11) を入れても同じです。5.1.19 JDBC ドライバーを使用しています。助言がありますか?

4

1 に答える 1

2

それはあなたのものであるか、ヌルポインタを返すかのいずれresultかです。getObject(...)方法があるのでgetInt()、最初にこれを試してください:

result.getInt("PaketBiljetter")

そして何が起こるか見てください。

于 2012-10-16T08:30:18.577 に答える