AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Doppel-Select-Anweisung zu langsam
Thema durchsuchen
Ansicht
Themen-Optionen

Doppel-Select-Anweisung zu langsam

Ein Thema von Ykcim · begonnen am 4. Feb 2013 · letzter Beitrag vom 7. Feb 2013
Antwort Antwort
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#1

AW: Doppel-Select-Anweisung zu langsam

  Alt 7. Feb 2013, 09:28
Schön! Auf dem Datum ist noch kein Index oder?
Aber wenn Du so zufrieden bist, ist es ja auch ok.

P.S. Ach ja, vorher brach die Procedure einfach nach einer ganzen Zeit ab, ohne das ich eine Meldung bekam, deshalb konnte ich auch keine hier posten...
Nun, das ist doch eine Aussage! Deutlicher und sinnvoller als "klappt nicht".

Sicher hilft Dir das Vorgehen später auch mal weiter, Fehlermeldung, Explain Plan, usw...

p.s.: Vielleich gelingt es Dir nun- mit Index- auch die Duplilkate zu entfernen und dann einen Primär oder Unique Index aufzubauen. Solche Dinge hält man lieber sauber.
Gruß, Jo

Geändert von jobo ( 7. Feb 2013 um 09:30 Uhr)
  Mit Zitat antworten Zitat
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
856 Beiträge
 
Delphi 12 Athens
 
#2

AW: Doppel-Select-Anweisung zu langsam

  Alt 7. Feb 2013, 10:40
Ich habe mit Sicherheit eine ganze Menge gelernt - vielen Dank!

Ich habe jetzt noch das Datum in den Index mit reingepackt - die Abfrage wird jetzt in 0,3 statt in 0,7 Sekunden ausgeführt.

Ich habe aber leider die Verwendung von Indizes noch nicht wirklich verstanden. Ich weiß also leider nicht, warum diese Geschwindigkeitsverbesserung passiert, wenn ich das Datum mit in den Schlüssel packe. Hat jemand einen Hinweis, (Link) wo das ganz einfach erklärt wird?

Vielen Dank
Patrick
Patrick
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.669 Beiträge
 
Delphi 12 Athens
 
#3

AW: Doppel-Select-Anweisung zu langsam

  Alt 7. Feb 2013, 10:45
Ganz einfaches Beispiel: Du suchst in einem Versandhauskatalog nach Bettwäsche. Du kannst nun alle 600 Seiten durchblättern, bis Du Bettwäsche findest, oder Du schaust hinten im alphabetisch sortierten Index unter "B" nach "Bettwäsche", erfährst dort, dass diese auf Seite 364 angeboten wird und blätterst zu dieser Seite. Was geht wohl schneller?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#4

AW: Doppel-Select-Anweisung zu langsam

  Alt 7. Feb 2013, 11:04
Ganz einfaches Beispiel: Du suchst in einem Versandhauskatalog nach Bettwäsche. Du kannst nun alle 600 Seiten durchblättern, bis Du Bettwäsche findest, oder Du schaust hinten im alphabetisch sortierten Index unter "B" nach "Bettwäsche", erfährst dort, dass diese auf Seite 364 angeboten wird und blätterst zu dieser Seite. Was geht wohl schneller?
Fast richtig
Du blätters nicht nur, bis Du die Bettwäsche findest, sondern auch alle Seiten dahinter noch, es könnte ja doch noch weitere Bettwäsche kommen.

Ohne Index wird die Bedingung für jeden Datensatz geprüft, wenn erfüllt, wähle Satz aus.
Mit Index wird dort geprüft, welche Datensätze in frage kommen und nur die werden ausgewählt.

binäre Suche: Wikipedia
Datenbankindex: Wikipedia
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:25 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