Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#8

Re: workaround dbgrid in client-server-anwendung

  Alt 29. Apr 2006, 06:48
Nur mal so: Dein 'demand fetching', also Zugriff nach Anforderung ist schon die richtige Lösung, nur hast Du prinzipiell immer noch ein Problem: Wenn jetzt 100 Nutzer gleichzeitig durch eine Tabelle scrollen, ergibt das dann doch massig Rechnerei in der Datenbank sowie Netzwerktraffic. Ob das dann die richtige Lösung ist, sei dahingestellt.

Weiterhin muss die gesamte Tabelle ja nach der ID sortiert werden und DANN erst können die nächsten Zeilen für die Anzeige übermittelt werden. Das ist nur dann ohne zusätzlichen echten Sortieraufwand auf der Datenbankseite möglich, wenn die Datensätze ohnehin nach ID sortiert auf der Platte liegen. Ich kenn FB nicht, aber bei MSSQL heißt das Zauberwort 'Clustered Index'. Soetwas gibt es bestimmt auch für Firebird und Du hast bestimmt auch daran gedacht, ich wollt's nur mal anmerken: Dieser Clustered Index (einen pro Tabelle) sorgt nämlich dafür, das die Records genau so sortiert sind und dann wird ein 'ORDER BY ID' (Clustered Index auf ID) vom Optimizer wegoptimiert.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat