![]() |
Datenbank: firebird • Version: 2.5 • Zugriff über: ZeosLib
Einfache Abfrage dauert 2 Sekunden
Hallo Leute,
mal eine kurze Frage .. Meine Abfrage dauert 2 Sekunden Anzahl Datensätze: 100.000 Maschine: Win8.1 32 bit HDD: SSD 200GB RAM: 3,00 GB CPU: Intel e8400 @ 3.00 GHz Abfrage: Lokal Delphi XE4 Die Tabelle:
Code:
/* Table: VERTRAGS_MENUPUNKT, Owner: SYSDBA */
CREATE TABLE "VERTRAGS_MENUPUNKT" ( "STRUCTURE_NR" INTEGER NOT NULL, "STRUCTURE_PR" INTEGER, "OBJECT_ART" INTEGER, "OBJECT_NAME" CHAR(200) CHARACTER SET ISO8859_1 COLLATE DE_DE, "OBJECT_TYPE" INTEGER, "AUTHOR_NAME" CHAR(200) CHARACTER SET ISO8859_1 COLLATE DE_DE, "AUTHOR_NR" INTEGER, "PERMISSION" CHAR(200) CHARACTER SET ISO8859_1 COLLATE DE_DE, "BARCODE_NR" INTEGER, "SUBDATA_NR" INTEGER, "ORDER_SEQUENCE_NR_A" INTEGER, "ORDER_SEQUENCE_NR_B" INTEGER, "ORDER_SEQUENCE_NR_C" INTEGER, "DONT_MOVE_AND_DELETE" INTEGER, CONSTRAINT "PK_VERTRAGS_MENUPUNKT" PRIMARY KEY ("STRUCTURE_NR") ); /* Index definitions for VERTRAGS_MENUPUNKT */ CREATE INDEX "IDX_VERTRAGS_MENUPUNKT_1" ON "VERTRAGS_MENUPUNKT"("OBJECT_TYPE", "OBJECT_NAME"); SQL Abfrage
Code:
Select * ... ist zwar nicht ideal - aber an dem kanns doch nicht liegen.
SELECT * FROM VERTRAGS_MENUPUNKT WHERE STRUCTURE_PR = 1 ORDER BY OBJECT_TYPE, OBJECT_NAME
Eine typische Anfrage liefert maximal 25 Records als Ergebnis .. Die Variationen der Abfrage betreffen immer nur: WHERE STRUCTURE_PR = X Wo kann ich da noch nachbessern ? Vielen Dank für Infos Erich |
AW: Einfache Abfrage dauert 2 Sekunden
Du könntest nen Index auf STRUCTURE_PR legen.
|
AW: Einfache Abfrage dauert 2 Sekunden
Hallo Baumina
Danke für den Hinweis :thumb: .. grad durchgeführt ... Zitat:
..aber die Geschwindigkeit ist nicht viel besser geworden ... Erich |
AW: Einfache Abfrage dauert 2 Sekunden
Funktioniert die Namensauflösung für localhost (wenn du lokal abfragst)? 2 Sekunden könnte gut ein Timeout bei den Named Pipes sein.
Gruß GRL |
AW: Einfache Abfrage dauert 2 Sekunden
Ist das wirklich die Laufzeit der Abfrage die Du dort mißt? Führe die Abfrage mal z.b. mit IBExpert aus oder mit ISQL.
|
AW: Einfache Abfrage dauert 2 Sekunden
Hab jetzt ausprobiert:
Code:
. ändert nichts
ZConnection1.HostName:='192.168.0.110';
Wenn ich aber via IBOConsole eine Anfrage erzeuge - gehts superschnell ???? Steh vor einem Rätsel... :pale: |
AW: Einfache Abfrage dauert 2 Sekunden
Nochmal die Frage: Misst Du wirklich ausschließlich die Dauer der Abfrage oder wird da noch ein Grid oder weitere Kontrollelemente gefüllt?
|
AW: Einfache Abfrage dauert 2 Sekunden
Sorry .. hab vergessen diese Angabe zu machen:
In einem DBGrid - onDoppelklick wird das SQL Statement erstellt - und im gleichen Grid werden dann die neu gefilterten Datensätze angezeigt .. der Zeitraum ist von Klick bis neue Darstellung |
AW: Einfache Abfrage dauert 2 Sekunden
Evtl. bringt ein DisableControls / EnableControls vorher / nachher etwas.
|
AW: Einfache Abfrage dauert 2 Sekunden
:oops:
OK ... die Geschwindigkeit hat nix mit meiner DB oder mit der SQL-Abfrage zu tun ... Ich hab jetzt mal mit ein paar TButtons die Abfrage in Gang gesetzt und hab das DBGrid deaktiviert ... geht so schnell wie es sein sollte .. Irgendwo hab ich noch ein Problem .. aber nicht in der Kette [DB - ZConnection - ZQuery - SQL ] :pale: Vielen Dank für eure Hilfe und liebe Grüße aus dem Salzburgerland Erich |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:16 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