Programmieren - alles kontrollieren 4.942 Themen, 20.719 Beiträge

DELPHI5P: Probleme mit SQL-Anweisung

(Anonym) / 2 Antworten / Baumansicht Nickles

Hallo Delphianer,
ich lade mir per SQL-Anweisungen Daten aus einer DB. Das funktioniert soweit einwandfrei. Nur wenn ich auf die Datensätze ca. 20000) zugreifen will, habe ich Probleme.

Beispiel:

Query2.First;
while not Query2.Eof do
begin
sNr := Query2.Fields[0].AsString;
sName := Query2.Fields[1].AsString;
sVorName := Query2.Fields[2].AsString;
.
.
.
sTag366 := Query2.Fields[366].AsString;
Query2.Next;
end;

Wird die Anweisung "Query2.Next;" zum 9142 mal aufgerufen, erhalte ich einen Hinweis "Allgemeiner SQL-Fehler".

Meine letzte Anweisung vor "Query2.Open;" ist "Query2.SQL.Add(\'order by jj_ausw_nr, jj_mon_jahr\');". Wenn ich die Sortier-Anweisung weglasse, tritt der oben beschriebene Fehler nicht auf. Nur ich bin darauf angewiesen, daß die Datensätze in einer bestimmten Reihenfolge sortiert sind.

Ich habe die gleichen Anweisungen direkt in den Datenbank-Explorer eingegeben. Die ersten Datensätze erscheinen korrekt im unteren Fenster. Springe ich dann per STRG+ENDE zu dem letzten Datensatz, erhalte ich auch hier einen Hinweis "Allgemeiner SQL-Fehler". Lasse ich die Sortier-Anweisung aber weg und springe per STRG+ENDE zu dem letzten Datensatz, tritt der Fehler nicht auf. Der letzte Datensatz ist dann sichtbar. Nur alles unsortiert.

Hättest Du einen Tip für mich, was ich falsch mache oder vielleicht eine andere Lösung ?

MfG.
Uwe

bei Antwort benachrichtigen
Borlander (Anonym) „DELPHI5P: Probleme mit SQL-Anweisung“
Optionen

Hallo Uwe,
erst mal eine Frage:
Ist es umbedingt erforderlich alle 20K Datensätze zu durchlaufen?

Im Beispiel werden einfach nur alle Sätze durchlaufen und bei jedem Durchlauf werden die einzelnen Felder in den Vars "s*" gespeichert. Beim nächsten Durchlauf wird das ganze wieder überschrieben. Passiert da sonst noch was?

Tip:
Wie wäre es mit dem Einsatz einer indizierten DB?

Eventuelles Problem:
Delphi erzeugt beim Einsatz von SQL Temporäre Dateien (die bei Anbstürzen natürlich bestehen bleiben). Genug freier Festplattenplatz?

CU Borlander

bei Antwort benachrichtigen
(Anonym) Nachtrag zu: „DELPHI5P: Probleme mit SQL-Anweisung“
Optionen

Hi,

ist es möglich der datensatz zu identifizieren und analysieren um zu sehen ob der doch nicht fehler enthält?

der db explorer scheint nur die sätze zu laden die er anzeigt, d.h mit strg+ende hohlt er sich nur die letzten.

wenn das hilft melde dich bitte bei mir, unter pjw@weserbergland.de.

peter. w.

bei Antwort benachrichtigen