Re: ACCESS 2007 Performance bei Recordsource Zuweisung in Formular

Tech-Archive recommends: Speed Up your PC by fixing your registry



Hallo!

Jörg Bottler schrieb:
in Access 2007 dauert das Zuweisen einer Recordsource im Formular extrem
lange.

Variante 1:
Me.RecordSource = " Select * from tblHuhu WHERE Huhu_Nr = " & parNr

Variante 2:
tblHuhu dem Formular als Datenquelle mitgeben.
und dann:

Set rst = Me.RecordsetClone

rst.FindFirst "Huhu_Nr=" & parNr
If rst.NoMatch Then
Set rst = Nothing
Exit Sub
End If

Me.Bookmark = rst.Bookmark

Läuft um vieles schneller. Klar ich muss natürlich bei Variante 1 nicht mehr
die Datensätze durchlaufen.
Trotzdem widerspricht das etwas den Performance-Tips von
http://www.granite.ab.ca/access/performancefaq.htm

Wenn du das Formular anfangs ungebunden ladest und erst später die
Recordsource-Zuweisung vornimmst, sollte Variante 1 auf jeden Fall
schneller sein.

Ist die Objektnamen-Autokorrektur aus? (Wenn es mir schwer fällt
bestimmte Performance-Unterschiede zu verstehen, gebe ich gerne diesem
ursuper Feature die Schuld. :-))


Zumal ich auch festgestellt habe, dass Listboxen, etc. auch schneller sind
in Access 2007, wenn man die Datenquelle schon im Steuerelement definiert.

Wie meinst du das?

Hat jemand ähnliche Erfahrung oder bessere Tips ?

Habe etwas bedenken, wenn die Backend im Netz steht und ich jedesmal beim
Laden des Formulars die komplette Tabelle tblHuhu laden muss und damit die
Daten über's Netz jage.

Das sollte imo nicht passieren, da auch FindFirst einen Index nutzen
sollte.

Apropo: Gibt es eine Möglichkeit eine Abfrage im Backend laufen zu lassen
und dann nur die Ergebnismenge über's Netz zu schaufeln. Wohl gemerkt meine
Backend ist auch eine AccessDB.

Das ist immer so ein Sache mit dem "Daten übers Netz schaufeln". Es
werden nicht unbedingt alle Daten übertragen, sondern nur dann wenn
kein Index genutzt werden kann. Natürlich muss für eine Indexsuche
auch ein bestimmter Datenbestand übertragen werden, da kein aktives
DBMS vorliegt.
Eine Abfrage kann aber nie im Access-BE laufen, da ein Access-(Jet)-BE
auf die DBEngine des Clients angewiesen ist.

mfg
Josef

--
EPT: (Access Error Prevention Table) http://access.joposol.com/
FAQ: (Access-FAQ von Karl Donaubauer) http://www.donkarl.com/
.



Relevant Pages

  • ACCESS 2007 Performance bei Recordsource Zuweisung in Formular
    ... in Access 2007 dauert das Zuweisen einer Recordsource im Formular extrem lange. ... Variante 1: ... wenn die Backend im Netz steht und ich jedesmal beim Laden des Formulars die komplette Tabelle tblHuhu laden muss und damit die Daten über's Netz jage. ...
    (microsoft.public.de.access)
  • Re: ACCESS 2007 Performance bei Recordsource Zuweisung in Formular
    ... Variante 1: ... Set rst = Me.RecordsetClone ... wenn man die Datenquelle schon im Steuerelement definiert. ... wenn die Backend im Netz steht und ich jedesmal beim ...
    (microsoft.public.de.access)
  • Re: Seite im Unterformular ausblenden
    ... die Abweichungen dieser 3 Varianten liegen meiner Meinung in einem Bereich, bei dem ich behaupten kann, dass alle 3 Variante gleich schnell ablaufen. ... Das ist nicht nur schneller, sondern auch sicherer - besonders wenn man daran denkt, dass vielleicht ein Formular mehrfach geöffnet sein kann bzw. einmal als HF und ein anderes mal als UF verwendet werden könnte. ... Die Reihenfolge ist nicht aktiv beeinflussbar. ... zu viel Performance-Gewinn zu erwarten. ...
    (microsoft.public.de.access)
  • Re: [SZ] Schienennetz bleibt staatlich?
    ... Netz kann man auf zweierlei Arten erreichen. ... Entweder durch möglichst viel Verkehr, oder indem man jede aktuell nicht benutzte Weiche rausreißt. ... würde ich Variante eins die Verkehrspolitiker-Strategie und Variante zwei die BWL'ler-Strategie nennen. ... Selbst auf dichtest befahrenen Strecken wurden in den letzten Jahren massenweise Nebengleise entfernt. ...
    (de.etc.bahn.bahnpolitik)
  • Re: Datenaustausch zw. 2 Scripten
    ... Parameter im URL) und machst ein Redirect auf das Formular. ... die beste Variante. ... Fileupload mittels JavaScript im Hintergrund. ... Nein, im mag JavaScript nicht, weil es durch den User abgeschaltet werden kann. ...
    (de.comp.lang.perl.misc)