Moin,
ich hab momentan ein sehr merkwürdiges Problem. Und zwar habe ich auf einer Form eine Tabelle, welche Daten aus einer Oracle-Tabelle anzeigen und manipulieren soll (komplette CRUD-Logik). Das anzeigen funktioniert auch einwandfrei. Wenn ich allerdings versuche einen neuen Datensatz anzulegen oder einen zu bearbeiten, werden die Änderungen bzw. der neue Datensatz nicht gespeichert. Ich bekomme allerdings auch keine Fehlermeldung. Ich greife auf die Datenbank ganz normal über die Kombination TSQLQuery, TDataSetProvider, TClientDataSet und TDataSource (welche als Komponenten direkt auf der Form liegen) auf die Daten zu.
Die Tabelle selbst besitzt einen zusammengesetzten Primärschlüssel und drei Foreignkeys.
In die Events des DataSets (sprich BeforDelete, BeforePost, OnNewRecord) springt er ganz normal rein und macht auch das was er machen soll. Im
Query und im ClientDataSet wurden die beiden Felder des Primärschlüssels beide mit dem ProviderFlag pfInKey gesetzt und im DataSetProvider wurde die Option UpdateMode auf upWhereKeyOnly gesetzt.
Hat vielleicht jemand von euch eine Ahnung was da falsch läuft? In den Events findet lediglich eine Befüllung von Standartwerden (beim NewRecord-Event), Prüfung (BeforePost) und Logging (BeforeDelete) statt, welche auch allesamt einwandfrei funktionieren. Ich bin mit meinem Latein langsam am Ende. So ein Problem hatte ich noch nie und ich hab alle Komponenten auch schon mehrfach wieder gelöscht und noch einmal neu angelegt.
Viele Grüße
Maliko
EDIT: Achso, ich arbeite mit Delphi 7.