Hallo,
ich habe ein C++Builder Projekt mit einer angebundenen Firebird Datenbank.
Im Projekt wird ein TDBGrid auf eine Tabelle dargestellt. Die Tabelle besteht aus ca. 80 Datenfeldern (überwiegend Typ FLOAT)
Die Datenbank enthält z.Zt. 500.000 Datensätze Tendenz schnell wachsend.
Wenn ich jetzt im C++Projekt schnell durch die Daten scrolle bzw. Scrollbalken ganz nach unten schiebe bekomme ich die Fehlermeldung "Zu wendig Arbeitsspeicher".
Idealerweise sollte ein TDBGrid wie ein Fenster auf einen Datenbereich funktionieren. D.h. Speicherbereich vor den angezeigten Daten freigeben. Dies ist offensichtlich nicht so.
Ich habe als vorübergehende Lösung im TDBDataSet->SelectSQL ein "select first 1000 * from DATEN order by zeit desc" die Daten beschränkt.
Kann dieses Problem Arbeitsspeichereffizienter programmiert werden?
Ist das eine Einstellungssache bzw. Konfigurationsproblem?
ich habe ein C++Builder Projekt mit einer angebundenen Firebird Datenbank.
Im Projekt wird ein TDBGrid auf eine Tabelle dargestellt. Die Tabelle besteht aus ca. 80 Datenfeldern (überwiegend Typ FLOAT)
Die Datenbank enthält z.Zt. 500.000 Datensätze Tendenz schnell wachsend.
Wenn ich jetzt im C++Projekt schnell durch die Daten scrolle bzw. Scrollbalken ganz nach unten schiebe bekomme ich die Fehlermeldung "Zu wendig Arbeitsspeicher".
Idealerweise sollte ein TDBGrid wie ein Fenster auf einen Datenbereich funktionieren. D.h. Speicherbereich vor den angezeigten Daten freigeben. Dies ist offensichtlich nicht so.
Ich habe als vorübergehende Lösung im TDBDataSet->SelectSQL ein "select first 1000 * from DATEN order by zeit desc" die Daten beschränkt.
Kann dieses Problem Arbeitsspeichereffizienter programmiert werden?
Ist das eine Einstellungssache bzw. Konfigurationsproblem?
Comment