![]() |
AW: Kleiner Geschwindigkeitstest von Insert
Zitat:
Delphi-Quellcode:
Der weiter oben beschriebene Aufruf wäre dann:
function test3a(qry : TZQuery; testzahl: integer): string;
var a: integer; p: TParam; begin qry.SQL.Text := 'begin transaction;'; qry.ExecSQL; qry.SQL.Text := 'Insert into daten2 (zahl) values (:zahl);'; qry.Prepare; p := qry.ParamByName('Zahl'); for a := 1 to testzahl do begin p.AsInteger := a; qry.ExecSQL; end; qry.SQL.Text := 'Commit;'; qry.ExecSQL; end;
Delphi-Quellcode:
Wobei das auch noch schöner ginge.
Form1.ZQuery1.SQL.Text := 'Delete from daten2';
Form1.ZQuery1.ExecSQL; test3a(Form1.ZQuery1,testzahl); Befinden sich Test3a ... im Quelltext von Form1, dann ist das hier überflüssig.
Delphi-Quellcode:
Kann SQLite eigentlich auch
ZQuery1.SQL.Text := 'Delete from daten2';
ZQuery1.ExecSQL; test3a(ZQuery1,testzahl);
Delphi-Quellcode:
ZQuery1.SQL.Text := 'truncate table daten2';
ZQuery1.ExecSQL; test3a(ZQuery1,testzahl); |
AW: Kleiner Geschwindigkeitstest von Insert
bnreimer:
Die Transaction läuft über SQLite, nicht über Zeos ( siehe auch Test8 ohne Transaction und Test9 mit Transaction). Welche Funktion die AutoCommit bei Zeos haben soll bzw. wie man sie einsetzt weiß ich nicht; Scheint bei SQLite nicht notwendig zu sein. Testhalber habe ich AutoCommit mal False, mal True gemacht; Jedoch ohne Unterschied. Aber wie gesagt, ich kenne mich bei dem AutoCommit von Zeos nicht aus. truncate kennt SQLite nicht. |
AW: Kleiner Geschwindigkeitstest von Insert
Zitat:
Aber ZEOS steuert diese und es ist ein Unterschied, ob man ein Skript schreibt oder mit Delphi Komponenten arbeitet. Und es kommt auch drauf an, welche Komponenten man nimmt, ob eine Query oder eine Skriptkomponente. Um das sicher zu wissen, muss man sowohl bei SQLLITE als auch bei ZEOS schauen, wie das Transaktionshandling ist oder zusätzlich über einen Monitor schauen, was die Kommunikation zwischen Client und Server macht. Aber ist natürlich nur nötig, wenn man es ganz genau wissen will und davon gehe ich aus, wenn man schon einen Benchmark schreibt. Gruß |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:37 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