Hallo...
ich bin mit meinem Latein am Ende.
Gegeben:
- Tabelle mit "ID" als Autoinc. (PK) (der Rest ist eher uninteressant)
- gewachsenes Programm was so mit anderen
DBMS gut funktioniert
IST:
1. TADOTable
2. Tabelle ist leer
Delphi-Quellcode:
Table.Append;
Table... füllen (außer ID logischerweise)
Table.Post;
Table.Refresh; // hier knallts mit Fehler... sinngemäß "Datensatz wurde geändert oder gelöscht. Die aktuelle Zeile wird gelöscht"
...eigentlich sollte das Post ja die Tabelle aktualisieren. Ich vermute, daß das bei
ADO nicht funktioniert. Da auf dem Server die ID existiert und in der Datenmenge nicht und er den PK nicht zuordnen kann. An diversen Stellen konnte ich durch ein Open/Close einen Workaround hinbiegen. An anderen Stellen, wo die ID, nach dem Post, weiterverarbeitet wird geht das nicht, da der Datensatzzeiger dann auf dem ersten steht und nicht auf dem letzten Eingefügten.
Erledigt:
Dann habe ich testweise das DBFramework auf SDAC umgerüstet... keinerlei Fehler ! Leider kann ich die Entscheidung nicht selbst treffen.
Versuche mit den Properties der Connection und der ADOTable... ohne Erfolg.
Bitte:
Welche Tricks verhindern diese bescheuerten Meldungen.