![]() |
Datenbank: Firebird • Version: 2,5 • Zugriff über: Zeos
Table Query synchronisieren
Hallo
Delphi-Quellcode:
Ich habe den Code im Internet gefunden um Tables/Querys zu synchronisieren. Wird ja jedesmal die Datenbank durchlaufen
DataModule1.ZReadOnlyQuery2.First;
DataModule1.ZReadOnlyQuery2.DisableControls; repeat if DataModule1.ZTable1.fieldByName('Counter').AsInteger = DataModule1.ZReadOnlyQuery2.fieldByName('Counter').AsInteger then break else DataModule1.ZReadOnlyQuery2.Next; until DataModule1.ZReadOnlyQuery2.EOF; DataModule1.ZReadOnlyQuery2.EnableControls; end; end; bis der Datensatz gefunden. Kann man das besser lösen. Ich freue mich auf Antworten |
AW: Table Query synchronisieren
![]() Durchläuft zwar auch das DataSet, aber erstmal mußt du das nicht jedesmal durchlaufen und eventuell auch noch etwas Flotter.
Delphi-Quellcode:
hätte man am Anfang in eine Variable speichern können, anstatt es jedesmal erneut auszulesen.
DataModule1.ZTable1.fieldByName('Counter').AsInteger
Und deine Schleife ist falschrum ... WHILE, denn was wird wohl passieren, wenn es in ZReadOnlyQuery2 mal keinen Record gibt und worauf würde dann verglichen. Und Locate würde intern auch nicht jedesmal das Feld neu suchen
Delphi-Quellcode:
, sondern sich ebenfalls, vor dem Durchlauf, nur einmal das Feld besorgen.
DataModule1.ZReadOnlyQuery2.fieldByName('Counter').
Delphi-Quellcode:
i := DataModule1.ZTable1.FieldByName('Counter').AsInteger;
DS := DataModule1.ZReadOnlyQuery2; DS.DisableControls; DS.First; F := DS.FieldByName('Counter'); while not DS.EOF and (F.AsInteger <> i) do DS.Next; DS.EnableControls; |
AW: Table Query synchronisieren
danke himitsu
mhh hatte ich ja ganz vergessen den befehl. martin michael |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz