Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi FireDAC langsam (https://www.delphipraxis.net/209400-firedac-langsam.html)

haentschman 2. Dez 2021 09:49

Datenbank: MSSQL • Version: 2017 • Zugriff über: FireDAC

FireDAC langsam
 
Hallöle...:P

Ich habe ein Statement:
Code:
update Documents set SendTypeUSB = 1 where ReceiptNumber = '121001280'
Feld ReceiptNumber ist im Index

Im MSSQL Studio Ausführungszeit: 00:00:00
In der Anwendung Query.ExecSQL Ausführungszeit: ~2000ms

Wie läßt sich sowas erklären? :gruebel:

Frickler 2. Dez 2021 09:55

AW: FireDAC langsam
 
Wie sieht die Geschwindigkeit aus, wenn statt einer Query- eine Command-Komponente verwendet wird?

haentschman 2. Dez 2021 10:45

AW: FireDAC langsam
 
Liste der Anhänge anzeigen (Anzahl: 1)
:evil:

Delphi-Quellcode:
TToolsMeasurement.StartTimeMeasuring;
FConnection.ExecSQL(Qry.SQL.Text, [1, Value]);
List.Add(TToolsMeasurement.EndTimeStartMeasuring);

TToolsMeasurement.StartTimeMeasuring;
Qry.ExecSQL;
List.Add(TToolsMeasurement.EndTimeStartMeasuring);
[0] FConnection.ExecSQL(Qry.SQL.Text, [1, Value]) 0
[1] Qry.ExecSQL ~2000
*siehe Bild

PS: Wenn ich die Aufrufe tausche, sind die Ergebnisse auch vertauscht. (Kontrolle)

Ich liebe FireDAC immer mehr...:?

Das heißt alle ExecSQL der Queries auf Connection.ExecSQL umstellen. :evil:

Nachtrag:
Für alle die sich auch verrückt gemacht haben... Das war alles Blödsinn. :oops:
Ich hatte im Development noch ein "LIKE" drin. Inwischen ist es nicht mehr notwendig...aber vergessen rauszumachen. :oops:
Für die Mitleser: Mit "LIKE" im Statement ist der Index außer Kraft.

:duck:

DeddyH 2. Dez 2021 11:53

AW: FireDAC langsam
 
Wenn der Frosch nicht schwimmen kann, ist die Badehose Schuld :mrgreen:. Theoretisch müsste ein Index aber auch bei LIKE greifen, solange der Suchbegriff nicht mit % oder _ beginnt, oder mache ich jetzt einen Denkfehler?

haentschman 2. Dez 2021 12:12

AW: FireDAC langsam
 
...mein LIKE hatte '%' davor. :wink: Wenn dann richtig. Früher war der Pfad Absolut gespeichert. Da war der Pfad unterschiedlich zur Entwicklung. Jetzt habe ich relative Pfade im Feld. Deswegen ist es jetzt raus. :stupid:

jobo 2. Dez 2021 12:32

AW: FireDAC langsam
 
Zitat:

Zitat von DeddyH (Beitrag 1498554)
Theoretisch müsste ein Index aber auch bei LIKE greifen, solange der Suchbegriff nicht mit % oder _ beginnt, oder mache ich jetzt einen Denkfehler?

Ja, der Index greift auch bei LIKE für den festen Textteil am Anfang des Suchausdrucks.
Varianten ergeben sich für ILIKE o.ä. und länderspezifische Codierungen / locales.

Das alles gilt mit mehr oder weniger Zucker für Indizierung mit herkömmlichen Indexverfahren bekannter DB Anbieter.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23: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 by Thomas Breitkreuz