Einzelnen Beitrag anzeigen

Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.143 Beiträge
 
Delphi 10.3 Rio
 
#14

AW: FMX-FireDac "!" Fehler oder Feature?

  Alt 18. Jun 2014, 03:47
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:
http://docwiki.embarcadero.com/RADSt..._DML_(FireDAC).
Ja eben...

unter SQLite werden Parameter von FireDac nur emuliert.
und um aus einem String mit
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.
  Mit Zitat antworten Zitat