![]() |
Re: TIBDataSet - Performance
das Problem ist das die Automatik dies nicht so erzeugt
|
Re: TIBDataSet - Performance
Du glaubst doch wohl nicht, dass ich das von Hand erzeugt habe ? :shock: Wer das in seinem Source sucht, wird in *.PAS nichts finden. Gespeichert wird das vom SQL-Generator in der DFM.
ahlzeitT :P |
Re: TIBDataSet - Performance
Also wenn ich das richtig verstanden habe mache ich das mit prepared Statements wie folgt:
Delphi-Quellcode:
Das läuft auch viel schneller.
if not DataSet.Prepared then
DataSet.Close, DataSet.SelectSQL := 'Select * from Tabelle where id=:Param'; DataSet.Prepare; end; for i:= 0 to Count-1 do begin DataSet.Close; DataSet.ParamByValue('Param') := i; DataSet.Open; ... end; Wie mach ich das denn, wenn ich in der WHERE-Klausel unterschiedliche Parameter habe (auch Anzahl verschieden)? |
Re: TIBDataSet - Performance
Zitat:
Delphi-Quellcode:
"Prepared" ?? Wo soll da ein Vorteil liegen. Habe das noch nie gebraucht.
DataSet.Close,
DataSet.SelectSQL := 'Select * from Tabelle where id=:Param'; DataSet.ParamByName ('Param').AsString := edXY.Text; // sofern überhaupt Text für das Feld richtig DataSet.Open; // die Datenmenge steht nun zur Verfügung für Next, Prior, EOF usw. Zitat:
|
Re: TIBDataSet - Performance
Zitat:
bringt das eine enorme Performancesteigerung im Sekundenbereich, da die Abfrage nicht jedesmal "vorbereitet" werden muss. |
Re: TIBDataSet - Performance
Hallo,
in der Regel halbiert sich die Ausführungszeit, kommt aber auch immer darauf an, was gemacht wird, also wie sehr das Netz belastet ist. Sollte nicht auf FB2 ein Ausführungs-Cache mit dabei sein, der das Preparen erübrigt? Heiko |
Re: TIBDataSet - Performance
Zitat:
![]() Sieht so aus, als könnten sogar die Nachteile überwiegen. |
Re: TIBDataSet - Performance
Nur weeil die BDE Sch... baut ist das doch kein Grund das mit anderen Komponenten zu verwenden.
|
Re: TIBDataSet - Performance
Zitat:
|
Re: TIBDataSet - Performance
Zitat:
Muss sowieso noch einige Tables füllen und werde dafür prepare mal mitverwenden. Nur : wo soll das genau hin ? Vor das Open oder wohin ? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:48 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