![]() |
Datenbank: MySQL • Version: ? • Zugriff über: 3306
MySQL Refresh
Gibt es noch eine andere möglichkeit ein DBGrid aktuell zu halten?
Delphi-Quellcode:
procedure TForm1.RefreshTimer(Sender: TObject);
begin MyTAble1.Last; MYTAble1.Refresh; end; |
AW: MySQL Refresh
Hier nochmals der Hinweis:
Gib bitte die Version des MySql-Servers an und mit welchem Framework du darauf zugreifst. Das kann doch so schwer nicht sein ... |
AW: MySQL Refresh
Naja, zunächst mal sollte man überlegen, ob es überhaupt notwendig ist
die angezeigten Datensätze in einem DBGrid immer aktuell zu halten. Beispiel: In einer Bücherei gibt es eine "Buch"-Tabelle. Wenn ein Mitarbeiter an Arbeitsplatz A neue Bücher einpflegt ist es sicher nicht notwendig, dass Arbeitsplatz B immer die aktuellen Daten sieht. Desweiteren ist es fast immer unnötig einem Benutzer ALLE Datensätze einer Tabelle anzuzeigen. Es reicht meistens eine Teilmenge der Daten - sprich man sollte SQL-Abfragen mit einschränkender WHERE-Klausel verwenden anstatt immer alle Datensätze mittels TTable abzurufen. |
AW: MySQL Refresh
Sorry, aber das muss ich jetzt mal los werden:
Ist es notwendig den TE immer zu "Bevormunden" (Das geschieht leider leider sehr sehr oft, "warum willst Du alle Datensätze" "warum müssen sie aktuell sein") Es gibt sicherlich einen guten Grund warum der TE die Datensätze aktuell haben möchte. Er sagt auch nichts von allen Datensätzen. Es gibt genügend Gründe für die Frage des TE. Ist nicht bös gemeint. Nun zum Tema: Leider kann auch ich die Frage nicht direkt beantworten. Mit den Devart Komponenten gibt es z.B. die Möglichkeit einzelne Datensätze zu aktualisieren. Stichwort "refreshrecord" |
AW: MySQL Refresh
Das hat nichts mit bevormunden zu tun, sondern ist ein Denkanstoss.
Und da er eine Table-Komponente verwendet, welche
SQL-Code:
als Abfrage verwendet, hat er alle Datensätze.
select * from <Tabelle>;
|
AW: MySQL Refresh
Zitat:
Ein Datenbankserver müsste zusätzlich eine Benachrichtigungsschnittstelle anbieten. Die Clients könnten sich beim Server registrieren nach dem Motto: "Server bitte schick mir ein Event, wenn sich der Inhalt der Tabellen Tab1, Tab2 oder TabXY ändert!". IMHO kann nur ![]() |
AW: MySQL Refresh
Ich kann noch mal die Devart Komponenten empfehlen.
Die Table-Komponente kann dort über
Code:
auch gefilterte Datensätze abrufen.
Mytable.filter := ....
Außerdem gibt es noch die "RefreshQuick" Methode. Die holt wenigsten nur die geänderten Datensätze. Und löscht bei bedarf die nicht mehr vorhandenen. Oder ein TimeStamp nutzen. Und nur dann refreshen wenn Daten geändert wurden. Wenns auch eine andere Datenbank sein darf dort gibt es notification events. (oracle, mssql ich glaube schon die Express Versionen) |
AW: MySQL Refresh
Zitat:
|
AW: MySQL Refresh
Zitat:
|
AW: MySQL Refresh
Sorry ich meinte auch:
SQL-Code:
Daraus wird dann
Mytable.filterSQl := ....
SQL-Code:
select * from mytable where ....
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:15 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