AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Abfrage von großen Datenmengen
Thema durchsuchen
Ansicht
Themen-Optionen

Abfrage von großen Datenmengen

Ein Thema von dARKeAGLE · begonnen am 3. Jan 2013 · letzter Beitrag vom 4. Jan 2013
 
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.757 Beiträge
 
Delphi 12 Athens
 
#10

AW: Abfrage von großen Datenmengen

  Alt 3. Jan 2013, 15:34
...verwendest lediglich ein TSQLDataSet (das ist unidirektional und somit nicht in einem Grid darstellbar).
Warum sollte man es nicht in einem TStringgrid darstellen können?
Gemeint war natürlich ein TDBGrid! Das kann mit unidirektionalen DataSets nichts anfangen.

Das Simple-/ClientDataSet lädt stndardmäßig das komplette Abfrageergebnis in den Hauptspeicher und da knallt es natürlich ab einer gewissen Menge.
Bei MySQL ist das egal da es hier keine serverseitigen Curser gibt.
Das hat damit nichts zu tun. Das ClientDataSet schickt eine Anfrage an den DataSetProvider, der diese wiederum an das SQLDataSet weitergibt. Dieses liefert eine Ergebnismenge, die der DataSetProvider an das ClientDataSet weitergibt. Intern wird dabei das MyBase-Format (Midas) zum Transport verwendet, bei dem die gesamte Datenmenge im Hauptspeicher vorliegt.

20.000 Datensätze sollten aber (wenn keine größeren Blobs) beteiligt sind selbst in einem 32-Bit Prozess noch keine Probleme darstellen.
Prinzipiell ist das richtig, aber wenn so mit den Feldgrößen geast wird. Wie Sir Rufo treffend bemerkt, hat die Buchungstabelle 73 Felder vom Typ VarChar(500). Das sind selbst bei AnsiChar ca. 37000 Byte pro Record. Bei 20000 Records kommen wir da schon auf fast 750MB. Wenn die intern beim Transport auch nur einmal by-value kopiert oder in einen Memorystream geschrieben wird, sind wir schon bei 1,5 GB.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:29 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