In Java I'm trying to test for a null value, from a ResultSet, where the column is being cast to a primitive int type.
int iVal;
ResultSet rs = magicallyAppearingStmt.executeQuery(query);
if (rs.next()) {
if (rs.getObject("ID_PARENT") != null && !rs.wasNull()) {
iVal = rs.getInt("ID_PARENT");
}
}
From the code fragment above, is there a better way to do this, and I assume that the second wasNull() test is redundant?
Educate us, and Thanks
Best Answer
The default for
ResultSet.getInt
when the field value isNULL
is to return0
, which is also the default value for youriVal
declaration. In which case your test is completely redundant.If you actually want to do something different if the field value is NULL, I suggest:
(Edited as @martin comments below; the OP code as written would not compile because
iVal
is not initialised)