AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)
Thema durchsuchen
Ansicht
Themen-Optionen

Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

Ein Thema von michele_tedesco · begonnen am 1. Jul 2015 · letzter Beitrag vom 4. Jul 2015
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 2. Jul 2015, 08:10
Auch mit der BDE werden keine 17k Records geladen und im Grid angezeigt, sondern nur immer soviele wie sichtbar sind. Wegen der direkten Adressierung über die RecNo und die Tatsache, daß die Tabelle physikalsich als Datei im Zugriff ist, kann die BDE da halt sehr schnell positionieren.

Die Rückgabemenge einer SQL-Abfrage muss aber erstmal erzeugt werden, um darin zu navigieren. Deswegen ist bei einer SQL-Query mit 17k Records das Open; Last; deutlich langsamer als bei der BDE, für die das am Ende lediglich ein FileSeek ist. Auch das seitenweise durchblättern der 17k Datensätze (aber wer will das schon) ist mit der SQL-Query nicht wesentlich langsamer, wenn man nicht beim Open schon alle Datensätze abruft, sondern nur soviele, wie ins Grid passen. Bei FireDAC z.B. würde man den FetchOptions.Mode auf fmOnDemand stellen (bzw. belassen).

Die SQL-Abfrage hat aber genau dort einen entscheidenden Vorteil, wo ich die Datenmenge vorab schon einschränken kann und dem User nur das präsentiere, was er wirklich braucht. Das erfordert an manchen Stellen schon ein bisschen mehr Überlegung als nur ein Grid auf das Form zu schubsen und mit einer Tabelle zu verbinden.

Jemand hat das mal mit der Telefonauskunft verglichen (ja, ist schon 'ne Weile her): SQL ist "Geben Sie mir bitte die Nummer von Heinz Müller, Heusengasse 14 in Köln". BDE ist: "Lesen Sie mir bitte das Telefonbuch von Köln vor und wenn ich Stop sage, geben Sie mir die Nummer".
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#2

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 2. Jul 2015, 16:16
SQL ist "Bitte geben Sie mir die Telefonnummer, die Etage und die Farbe der Wohnungstür von allen Kölnern deren Name "lle" enthält
deren Hausnummer 14 ist
und deren bevorzugter Sportverein Fortuna Düsseldorf ist
sortiert nach der 3.Stelle der Telefonnummer"



Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#3

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 3. Jul 2015, 14:29
Auch mit der BDE werden keine 17k Records geladen und im Grid angezeigt, sondern nur immer soviele wie sichtbar sind. Wegen der direkten Adressierung über die RecNo ...
Wie macht die BDE das bloß, wenn ich damit einen SQL-Server anspreche? Wahnsinn.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#4

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 3. Jul 2015, 14:56
Schätze, die hat ein SQL Statement an den Server geschickt, oder?
Ich fand die BDE eigentlich immer ganz gut. Das schlimmste war der vergurkte Lockmechanismus.
Aber man konnte damit heterogene Datenbankzugriffe machen.
Frag mich immer, warum sie beerdigt wurde, statt sie aufzubohren. Waren da soviel Leichen im Keller? Multibytefähigkeit wäre vlt eine davon, Lizenzprobleme, Patente vielleicht ...

Wenn ich heute noch solche Anfragen zur BDE Ablösung sehe, frage ich mich, wieviele Kunden Borland damit wohl hopps gegangen sind.
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 3. Jul 2015, 17:15
Frag mich immer, warum sie beerdigt wurde, statt sie aufzubohren. Waren da soviel Leichen im Keller? Multibytefähigkeit wäre vlt eine davon, Lizenzprobleme, Patente vielleicht ...
Ja. War vermurkster Code und Teile der SW haben AFAIK nicht Borland/Codegear/Emba gehört.
Aber mittlerweile hat man ja mit FireDAC eine passende neue Schnittstelle


Wenn ich heute noch solche Anfragen zur BDE Ablösung sehe, frage ich mich, wieviele Kunden Borland damit wohl hopps gegangen sind.
Man hat viel zu lange diese noch lauffähig gehalten. Die paar die trotzdem gewechselt sind muss man mit den 10.000 € Kosten gegenrechnen jeweils die BDE noch (halbwegs) unter neuen Delphi und Windows-Versionen am laufen zu halten.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#6

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 4. Jul 2015, 07:45
..Aber mittlerweile hat man ja mit FireDAC eine passende neue Schnittstelle
Ich dachte, das sind "nur" Zugriffskomponenten. Ist das eine eigene Engine? Beherrscht die heterogene Abfragen?
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von mschaefer
mschaefer

Registriert seit: 4. Feb 2003
Ort: Hannover
2.032 Beiträge
 
Delphi 12 Athens
 
#7

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 4. Jul 2015, 08:17
Moin zusammen,

Da wo ich die BDE am Laufen hatte, habe ich lange Firebird embedded genommen, inzwischen arbeite ich mit DB2 Express-C oder Oracle, letzteres wenn was in Verbindung mit APEX gebraucht wird.

PS: Ja, FireDAC regelt nur den Zugriff.

Grüße in die Runde
Martin Schaefer
Phaeno
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 4. Jul 2015, 08:36
..Aber mittlerweile hat man ja mit FireDAC eine passende neue Schnittstelle
Ich dachte, das sind "nur" Zugriffskomponenten. Ist das eine eigene Engine? Beherrscht die heterogene Abfragen?
Primär ist es eine Zugriffskomponente. Gegenüber der BDE hat es den "Nachteil" kein eigen Engine wie dBase mit zu bringen. Aber das sehe ich nicht als nachteil an da man damit ja fast jedes DBMS ansprechen kann. Wieso dann sowas (veraltetes) wie dBase mitschleppen.

Was meinst du genau mit heterogene Abfragen? Was genau brauchst du?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#9

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 4. Jul 2015, 09:07
Was meinst du genau mit heterogene Abfragen? Was genau brauchst du?
Ich brauche nichts. Ich wollte lediglich auf dieses nette BDE "Feature" hinweisen. Heterogene Abfragen wie es bspw. auch die großen Server können. In einer Query mehrere Server unterschiedlicher Hersteller abzufragen.
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: Lesegeschwindigkeit DBase (BDE) DBGrid (ALternative für die Zukunft?)

  Alt 4. Jul 2015, 10:51
Beherrscht die heterogene Abfragen?
FireDAC erlaubt über LocalSQL auch den Zugriff auf DataSets unterschiedlicher Herkunft.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 07:54 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