Die Sache mit den NULL-Werten
result.getXXX
Methoden aus den
NULL-Werten der Datenbank?
int klasse = result.getInt("SKlasse");
String vorname = result.getString("SVorname");
null
, für int
0
result.wasNull()
[...]
int wert = rs.getInt(3); // → 0, aber in der DB NULL!
boolean wasnull = rs.wasNull(); // → true
if(wasnull) {
wert = null;
}
[...]
Das klappt nicht, weil primitive Datentypen (int, char, double...)
in Java keine Objekte sind und darum keine null
-Werte
speichern können.
Wir müssen die entsprechenden Wrapper-Klassen verwenden, dann klappt es!
[...]
Integer wert = rs.getInt(3); // → 0, aber in der DB NULL
if(rs.wasNull()) {
wert = null; // Jetzt klappt das!
}
[...]
Integer x = rs.getInt(1);
if (rs.wasNull()) x = null;
[...]
if (x == null) {
textBox1.setText("Kein Wert in der DB vorhanden");
} else {
textBox1.setText(x.toString());
}