Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Daten schneller anzeigen (https://www.delphipraxis.net/27180-daten-schneller-anzeigen.html)

franktron 5. Aug 2004 14:33


Daten schneller anzeigen
 
Wie kann ich daten in einer DBGrid schneller anzeigen.

Ich benutze ein MYSQLServer mit DAC FOR MYSQL.

Wie kriege ich das jetzt hin die daten anzuzeigen (ca. 150000) ohne das beim öffnen der Query oder Table ich erstmal 1 Min warten muss.

Bernhard Geyer 5. Aug 2004 14:40

Re: Datne schneller anzeigen
 
Nur mit der Kaufkomponente MySQL DAC.
MySQL bietet keine Serverseite Curser. Deshalb müssen alle Komponenten erst alle Daten zum Client schicken und können sie erst dann anzeigen. MySQL DAC bietet hier die Möglichkeit (über eine gesonderte, nicht in Transaktionen laufende Verbindung nur die benötigten Datensätze abzurufen.

Sonst bleibt dir Möglichkeit per Where-Bedinung oder Limit-Eintrag die Anzahl der Ergebnisdatensätze zu beschränken.

mirage228 5. Aug 2004 14:40

Re: Datne schneller anzeigen
 
Zitat:

Zitat von franktron
Wie kann ich daten in einer DBGrid schneller anzeigen.

Ich benutze ein MYSQLServer mit DAC FOR MYSQL.

Wie kriege ich das jetzt hin die daten anzuzeigen (ca. 150000) ohne das beim öffnen der Query oder Table ich erstmal 1 Min warten muss.

Hi,

du musst nicht alle Daten auf einmal holen. Hol doch ertmal 1000 Datensätze oder so. Und wenn im DB-Grid gescrollt wird, lädst du den Rest nach.

mfG
mirage228

franktron 5. Aug 2004 14:56

Re: Datne schneller anzeigen
 
Zitat:

Zitat von mirage228
Zitat:

Zitat von franktron
Wie kann ich daten in einer DBGrid schneller anzeigen.

Ich benutze ein MYSQLServer mit DAC FOR MYSQL.

Wie kriege ich das jetzt hin die daten anzuzeigen (ca. 150000) ohne das beim öffnen der Query oder Table ich erstmal 1 Min warten muss.

Hi,

du musst nicht alle Daten auf einmal holen. Hol doch ertmal 1000 Datensätze oder so. Und wenn im DB-Grid gescrollt wird, lädst du den Rest nach.

mfG
mirage228

Genau das hab ich mit auch überlegt aber wie ?????

mirage228 5. Aug 2004 14:58

Re: Datne schneller anzeigen
 
Hi,

wenn du einen Select ("SELECT * FROM tabelle LIMIT 1000") durchführst, beschränkst du diese auf 1000.

Nun fängst du das Scroll-Ereignis des DB-Grids ab und wenn du bei den z.B. 30 letzen Datensätzen angekommen bist, lädst du diese nächsten 1000 nach.

mfG
mirage228

franktron 5. Aug 2004 15:02

Re: Datne schneller anzeigen
 
Zitat:

Zitat von mirage228
Hi,

wenn du einen Select ("SELECT * FROM tabelle LIMIT 1000") durchführst, beschränkst du diese auf 1000.

Nun fängst du das Scroll-Ereignis des DB-Grids ab und wenn du bei den z.B. 30 letzen Datensätzen angekommen bist, lädst du diese nächsten 1000 nach.

mfG
mirage228

Ja das ist mir klar aber wie mache ich das in Deplhi wenn einer Scrollt das ich das limit hochsetze.

Und wie kann ich am besten suchen (suche normalerweise mit locate)

mirage228 5. Aug 2004 15:05

Re: Datne schneller anzeigen
 
Zitat:

Zitat von franktron
Zitat:

Zitat von mirage228
Hi,

wenn du einen Select ("SELECT * FROM tabelle LIMIT 1000") durchführst, beschränkst du diese auf 1000.

Nun fängst du das Scroll-Ereignis des DB-Grids ab und wenn du bei den z.B. 30 letzen Datensätzen angekommen bist, lädst du diese nächsten 1000 nach.

mfG
mirage228

Ja das ist mir klar aber wie mache ich das in Deplhi wenn einer Scrollt das ich das limit hochsetze.

Und wie kann ich am besten suchen (suche normalerweise mit locate)

Hi,

du musst dir merken, wieviele Datensätze du schon hast.

Die Abfrage sehen dann so aus
SQL-Code:
SELECT * FROM tabelle LIMIT <von>, <bis>
Dann wählst du alle Datensätze von <von> bis <bis> aus.

Am Anfang wählst du 0, 1000. Danach 1000, 2000 usw.

mfG
mirage228

franktron 6. Aug 2004 10:44

Re: Daten schneller anzeigen
 
Also das mit dem limit klappt schon aber das mit dem scollen nicht er bleibt immer auf dem ersten Datensatz stehen.

Ich habs im Onscollereigniss von der Query Gesetzt und irgend wie geht das nicht.

Jelly 6. Aug 2004 10:52

Re: Daten schneller anzeigen
 
Zitat:

Zitat von franktron
(ca. 150000)

Hallo,
das ist schon von vorne herein der falsche Ansatz. Kein Mensch wird sich durch 150000 Datensaätz durchscrollen wollen. Versuche, gleich einen gescheiten Filter zu setzen und somit die Datenmenge auf maximal einige Hundert zu beschränken.

Gruß,

franktron 6. Aug 2004 10:55

Re: Daten schneller anzeigen
 
Geht leider nicht ist ein Lager und ich weis nicht was er gucken will :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:47 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz