![]() |
Hallo Hansa,
Indices kannst du nur Tabellen, nicht aber TQueries zuordnen. Einen aus den vorhandenen Indices einer Tabelle kannst du det TTable Eigenschaft IndexNames zuordnen:
Delphi-Quellcode:
Du kannst aber auch IndexFieldNames verwenden.
tabPersonen.IndexNames := 'idxNachOrten';
Die WHERE Klausel gehört zu SQL, dient aber zur Beschränkung einer Auswahl und ist somit eher das Gegenstück zum Filter einer Tabelle. Zum Sortieren benutzt du die ORDER BY Klausel. Zum Einfügen einer Datenmenge in eine Tabelle nutzt du das INSERT Statement. |
Hallo,
Zitat:
Zitat:
Thomas |
Hallo fiasko,
Zitat:
|
Hallo MrSpock
Zitat:
|
Hallo Rapthor!
Es gibt bei der TQuery die Eigenschaft "RequestLive" die muß auf True stehen, dann bekommst Du eine aktualisierbare Datenmenge zurück. Das müsste Dein Problem lösen, die Daten nach dem sortieren nicht mehr editieren zu können! |
Laut Delphi-Hilfe funktioniert RequestLive zur Rücklieferung BEARBEITBARER Ergebnismengen, wenn die SQL Anweisung mit der ORDER BY Klausel auf der Sortierung mit Index basiert.
Da meine Sortierung jedoch OHNE Index funktioniert scheint hier der Grund gegeben zu sein, warum ich RequestLive NICHT anwenden kann. Jetzt ergibt sich für mich die Frage, wie ich die Sortierung mit Indexerstellung fertigbringe. Kann mir da jemand eine Schritt-für-Schritt-Anleitung geben? Ich hoffe dann nämlich die RequestLive Funktion nutzen zu können ...... :o Ich habe zu danken |
Hallo Rapthor,
diese Einschränkung ist mir neu, aber man lernt ja nie aus... Hintergrund scheint zu sein, dass bei Einfügen eines neuen Datensatzes aufgrund des fehlenden Indexes eine korrekte Einsortierung des neuen Datensatzes nicht möglich ist. Also bleibt doch nur der Weg, bereits bei der Definition der Tabelle einen (Sekundär-)Index anzulegen, dann brauchst du aber auch kein Select-Statement in einer TQuery Komponente, sondern kannst wie ich schon einmal beschrieben habe, einfach den Index auswählen. Du hattest ja ganz am Anfang sowieso SELECT * verwendet, also alle Felder ausgewählt. |
Gut, einen Index erstellen :D
Und wie/wo geht das? Ich bin da leider total der Laie und müsste wissen unter welchen Menüpunkten ich das machen kann. Tut mir Leid wenn ich damit schon nerve ..... :oops: |
Gut also Indexerstellung hab ich jetzt erledigt...undzwar mithilfe der Datenbankoberfläche (ein Extraprogramm des Delphipakets).Sortieren klappt und nen neuen Datensatz hinzuzufügen klappt jetzt nach der Sortierung auch. ALLERDINGS funktioniert es dann wieder NICHT eine erneute Sortierung nach Index vorzunehmen.
D.h. nach dem ersten Hinzufügen sind die Indexdinger nutzlos und eine Sortierung kann nicht durchgeführt werden. Zitat:
|
Hallo Rapthor,
das mit der DB - Oberfläche war goldrichtig! Hast du den Index als "gewartet" (Optioonsfeld bei der Definition des Indexes) definiert? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:40 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