Hallo Giuseppe
Vielen Dank für den Hinweis. Ich werde mal DataSet oder DataTable ausprobieren. Das SQl Statement, das ich zur Zeit verwende lautet ungefähr so:
select text from textTable where (sp1 like „wert1“ and sp2 like „wert2“ and sp3 like „wert3“)
Hoffe das ist richtig geschrieben, das *echte* Statement tut`s auf jeden Fall.
Ich glaube allerdings nicht, dass Read() langsamer wird. Kann es sein, das durch Read() ACCEESS sozusagen immer wieder angestoßen wird den Nächsten zu suchen? Da keiner gefunden wird erfolgt die Suche bis ans Ende der Tabelle. Interessant währe es, vorab die Anzahl der Zeilen zu bestimmen um die Schleife selbst abzubrechen. Würde die Suche bis zum biteeren Ende ersparen. Direkt in ACCEESS scheint das optimaler zu klappen.
Auf einer SQL DB habe ich das in einer Stored Procedure komplett samt Aufbereitung (Alle texte in ein Feld „summieren“) wesentlich schneller hinbekommen. Dort verwende ich das obige select zum Füllen einer tempTable die ich dann per cursor in ein Feld „summiere“. Kann man sowas für ACCESS auch machen? Da dann genau eine Zeile entsteht, in der der Text enthalten ist, könnte ich mir das while (MyReader.Read()) { mach es!} sparen!
Fast eine Grundsatzfrage:
Bei Verwendung einer DB: Wer soll´s machen? DB oder Code? Im Extremfall alle Daten der DB lesen und im Code bearbeiten oder „SQL“ bis das benötigte Ergebnis da ist? Hängt wohl an vielen Fragen (lokal oder fürs web, Anzahl der Datensätze, Schwierigkeit der Aufbereitung) Gibt´s da sowas wie "Faustregeln?
Sobald der Test per Data* gelaufen ist melde ich mich mal.
MfG
Dirk
Handle so, daß Dein Handeln Grundlage eines allgemeinen
Gesetzes sein kann. (Immanuell Kant)