![]() |
AW: FMX-FireDac "!" Fehler oder Feature?
Zitat:
Zitat:
|
AW: FMX-FireDac "!" Fehler oder Feature?
Stichwort "Performance": Solltest Du gleich eine größere Anzahl an Werten haben, dann könntest Du die "Batch-Funktionalität"-FireDAC nutzen. Grob gesagt übergibst Du der FireDAC-Komponente ein mehrdimensionales Array an Werten und lässt sie dann machen. Gegenüber einzelnen Requests konnte ich da Performance-Steigerungen um den Faktor 10 (!) erzielen.
Details dazu unter: ![]() |
AW: FMX-FireDac "!" Fehler oder Feature?
Zitat:
Zitat:
|
AW: FMX-FireDac "!" Fehler oder Feature?
Zitat:
unter SQLite werden Parameter von FireDac nur emuliert. und um aus einem String mit
Delphi-Quellcode:
SQL.Text := 'insert into Customers (ID, RegionID, Name, Note) values (:ID, :RegionID, :Name, :Note)';
wieder eine SQL Anweisung zu machen muss Firedac den String wieder zusammen bauen... Weil die SQLite.dll nur SQL-Strings verarbeiten kann. Übrigens ein
Delphi-Quellcode:
SQLQuery.SQL.Text := 'BEGIN;';
...// inset 10000 Datensätze SQLQuery.SQL.Text := 'COMMIT;'; Hat zur Folge das erst alles in RAM kopiert wird und dann gebündelt an die DLL übergeben wird. |
AW: FMX-FireDac "!" Fehler oder Feature?
String-Operationen sind im Vergleich zu den ganzen grafischen Sachen und Animationen doch nicht wirklich teuer. Ich bezweifel, dass man da tatsächlich einen Geschwindigkeitsunterschied auf Android/iOS sieht. Wir verwenden in unserem Web-Framework auch RegExen und alle möglichen anderen String-Operationen (bei jedem Request) und erzielen trotzdem Geschwindigkeiten bei denen eine solche Pseudo-Optimierung schlicht nicht nötig ist.
Die meisten Projekte verwenden ja inzwischen ORMs und da wird IMHO auch immer mit Parametern gearbeitet. Noch dazu ist der ORM an sich ja noch mal eine Ebene der Indirektion, die Ressourcen benötigt. Wir selber schreiben inzwischen nicht mal mehr die Queries, sondern nutzen einen Query-Builder mit Fluent-Interface, der ganz am Ende erst das parameterisierte Statement zusammenbaut. |
AW: FMX-FireDac "!" Fehler oder Feature?
Frank, mach es so, wie Du Dich damit am besten fühlst.
Aber zwei Sachen kann man nicht stehen lassen, weil sie schlichtweg falsch sind: Zitat:
Zitat:
Ich denke, es ist klar geworden, dass Du diesen Weg nicht gehen möchtest und das ist Dein gutes Recht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18: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