jdbc, PreparedStatement und null-Werte
Von: , Frage gestellt am Mi, 19. Mai 2004
Hallo,
kann ich die Klasse java.sql.PreparedStatement nutzen, wenn ich in einer Where-Klausel auch Null-Werte ermöglichen will?
Beispiel (vereinfacht):
"DELETE FROM tabelle WHERE col1 = ?",
Wenn der Wert für das "?" ein null-Wert ist, wird er gesetzt mit:
--> stmt.setNull(index, type);
ansonsten mit
--> stmt.setObject(index, value);
Doch das funktioniert bei mir nicht (getestet mit: MySql und SQLServer und diversen Datentypen), der RowCount vom ExecuteUpdate liefert immer 0 zurück - auch ein entsprechender Selekt liefert keine Ergebnisse. Liegt das daran, dass SQL bei Abfragen auf null ein "is null" vorschreibt?
Damit kann ich dann aber auch das PreparedStatement inkl. dessen Vorteile vergessen - ODER?
Da diese Anweisung jedoch oft und mit unterschiedlichen Werten ausgeführt werden soll, wäre das wirklich schade.
Vielen Dank im voraus,
Claudia
