Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Record Status (https://www.delphipraxis.net/191856-record-status.html)

Tossi 25. Feb 2017 11:32

Datenbank: Firebird • Version: 2,5 • Zugriff über: IBO

Record Status
 
Hallo Kollegen,
ich stehe ein wenig auf dem Schlauch. Ich hole per Query Daten aus der Datenbank und zeige diese in einem DBGrid an.
Die Query steht auf CachedUpdates. Ich will nicht die Updates über die Query in die Datenbank schreiben.
Jetzt ändere ich einige Datensätze. Alles kein Problem.
Nun wird gespeichert:
Ich stelle die Query auf den ersten Datensatz und laufe diese daann bis EOF durch.
Nur wenn dar aktuelle Datensatz geändert wurde, will ich diesen speichern.
Kann man den Status eines Datensatzes abfragen?

Danke für eure Hilfe.

himitsu 25. Feb 2017 16:29

AW: Record Status
 
Delphi-Referenz durchsuchenTFDTable.CachedUpdates
Sowas wie CommitUpdates gibt es bestimmt auch bei IBO.

PS: Field.Value, Field.OldValue und Field.NewValue (auf dem aktuell selektiertem Record)
Alle Fields prüfen und schauen ob sich Old und New unterscheiden und wenn ja, dann Posten.

Tossi65 25. Feb 2017 16:34

AW: Record Status
 
Danke für die schnelle Antwort.
In C# kann man jeden Record einer Table auf den Status prüfen. Ich dachte das geht in Delphi auch.
Wie gesagt die Query selbst soll die Daten nicht in die Datenbank schreiben. Aber sie dient als Basis
für das Speichern. Deswegen will ich diese bis eof durchlaufen und Daten speichern,
wenn etwas verändert worden ist.

MichaelT 25. Feb 2017 17:06

AW: Record Status
 
TIBDataset hat ein Modified, das anzeigt ob die aktuelle Zeile geändert wurde.

http://www.ibobjects.com/Ibo/IDH_Class_TIB_Dataset.htm

Ich habe IBObjects nicht und schon mind 15 Jahre nicht mehr verwendet. Ob jetzt diese Eigenschaft für jeden Datensatz gilt der geändert wurde ...


Zitat:

Zitat von Tossi65 (Beitrag 1362658)
Danke für die schnelle Antwort.
In C# kann man jeden Record einer Table auf den Status prüfen. Ich dachte das geht in Delphi auch.
Wie gesagt die Query selbst soll die Daten nicht in die Datenbank schreiben. Aber sie dient als Basis
für das Speichern. Deswegen will ich diese bis eof durchlaufen und Daten speichern,
wenn etwas verändert worden ist.



Alle Zeitangaben in WEZ +1. Es ist jetzt 13:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz