Forums Neueste Beiträge
 

Access Abfrage läuft sehr langsam

13/03/2009 - 23:07 von Karl Heinz | Report spam
Hallo NG,

ich habe ein Problem beim einlesen einer Access Datenbank. Ich benutze
zwei in einander verschachtelte foreach Schleifen um Informationen
abzurufen:

foreach(DataRow row in dtKrit.Rows)
{
i++;
sKrit = row["KritMes"];
taTmp.FillByDPGroup(dtTmp, sKrit);
foreach (DataRow rowObj in dtTmp)
{
sSubDP += rowBACObj["dp_suffix"] + ";";
}
}

Die erste Schleife wird za. 2000 mal durchlaufen und die innere
Schleife maximal 8 mal. Insgesamt dauert dieser Vorgang lànger als 5
Minuten! Kann mir jemand sagen welchen Fehler ich hier mache?

Besten Dank vorab!

Gruß

Karl-Heinz
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
13/03/2009 - 23:15 | Warnen spam
Hallo Karl Heinz,

"Karl Heinz" schrieb:

ich habe ein Problem beim einlesen einer Access Datenbank. Ich benutze
zwei in einander verschachtelte foreach Schleifen um Informationen
abzurufen:



Ist das in dieser Form wirklich notwendig? Meiner Meinung nach sollte
das auch in einer oder zwei Views zusammenzufassen sein, so dass Du
die Datenbank die Arbeit erledigen lassen kannst.

Die erste Schleife wird za. 2000 mal durchlaufen und die innere
Schleife maximal 8 mal.



Also 16000 Durchlàufe und 2000 mal Zugriff auf die Datenbank um dann
8 Datensàtze zu erhalten? Etwas viel würd ich sagen.

Kann mir jemand sagen welchen Fehler ich hier mache?



Was genau brauchst Du denn, wie sieht die DB Struktur aus, ...?

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen