wenn man bei einem
Query oder Table den Filter setzt (
Table1.Filter := 'Column1 = abc';
), wird die Datenmenge, welche die Komponente abrufen soll, neu abgerufen (mit einer Where-Klausel o.ä.) oder nicht?
Läßt sich doch ganz einfach testen:
Du programmierst dir eine Methode zum Setzen bzw. Löschen des Filters:
Delphi-Quellcode:
private {private Deklarationen}
Procedure TFormMain.Filtern(MyTable : TTable; MyFilter : String; Setzen : Boolean);
begin
MyTable.Filtered := False;
if Setzen then
begin
MyTable.Filter := MyFilter;
MyTable.Filtered := True;
end;
end;
Die rufst du – meinetwegen mit einem Buttonklick – auf, nachdem du mit deinem Lieblings-Datenbank-Manager einen Wert in dieser Tabelle geändert hast. Wird der geänderte Wert auch in deiner Anwendung angezeigt, hat das Setzen des Filters aktuelle Daten aus der
DB geschaufelt, andernfalls nicht.