Ich habe ein Riesenproblem:
Ich steige um von Delphi 7 auf 2010 und befürchte, dass im Zusammenhang mit den neuen TIB-Komponenten das Standardverhalten bei der Übergabe von NULL an (Firebird 1.5) Date-Felder geändert wurde.
Bisher habe ich NULL-Values an ein Datefield so übergeben:
Delphi-Quelltext
1: 2:
| Dataset1.FieldByName('DateField1').AsString := '' bzw. Dataset1.FieldByName('DateField1').clear |
Damit kam (nach Post und Commit) in der DB immer schön ein NULL-Wert an.
Jetzt - unter Delphi 2010 - führen beide Varianten dazu, dass der letzte bzw. alte Wert wiederhergestellt wird. Offensichtlich wird ein Leerstring als inkorrekt angesehen und deshalb wird der letzte korrekte Wert restauriert.
Dies ist ein großes Problem, u.a. führen viele fertige SQL-Queries zu falschen Ergebnissen, weil ich mit '... where Datefield1 is null' arbeite etc.
Weiß jemand zu diesem Thema Rat und kann helfen? Ich wäre sehr dankbar.
Moderiert von
Narses: Color- durch Delphi-Tags ersetzt