Moin,
ich habe ein sehr merkwürdiges Problem mit dem Oracle 8 Client.
Ich benutze TUpdateSQL und wenn ich in ein Feld schreibe, das noch den Wert NULL enthält, klappt alles wie es soll.
Führe ich jedoch ein weiteres Update auf ein weiteres NULL Feld durch, wird dieses nicht mehr in die Datenbank geschrieben.
Hier mal ein Codebeispiel: (alle Felder enthalten den Wert NULL)
Delphi-Quellcode:
with Query1 do
begin
Edit;
FieldByName('GANZZAHL').AsInteger := 10;
Post;
ApplyUpdates;
CommitUpdates;
Edit;
FieldByName('DATUM').AsDateTime := StrToDate(Edit3.Text);
Post;
ApplyUpdates;
CommitUpdates;
Edit;
FieldByName('TEXT').asString := 'Ich bin der Text';
Post;
ApplyUpdates;
CommitUpdates;
end;
Mit diesem Code würde nur im Feld GANZZAHL eine 10 erscheinen. Alle anderen blieben leer. Unabhängig vom Datentyp. Es wird nur das erste Update ausgeführt.
Updates auf Felder, die bereits Werte enthalten, werden wie erwartet weggeschrieben.
Komischerweise tritt dieses Problem nicht mit dem Oracle 7 Client auf.
Kennt jemand das Problem?
Ist es ein Bug im Oracle 8 Client?
Oder gibt es noch irgendwelche Konfigurationen, die dieses Problem hervorrufen?