Aktualisierung nach löschen eines Datensatzes

Hallo, ich habe ein Access Datenbank angelegt. Löschen, Hinzufügen und bearbeiten Funktioniert einwandfrei mit buttons und speichern in die entsprechende Tabelle.

Nur dauert die Aktualisierung des Formulars, das heißt bis die Daten in aktueller Form sichtbar sind sehr lange.

Heißt es werden die Daten aus der entsprechenden Tabelle gelöscht.

Befehle wie

rs.requery
rs.update

Me.FormularXY.Requery
Me.FormularXY.Refresh

Me.FormuareUFoXY.Requery
Me.FormuareUFoXY.Refresh

bringen nicht den erwünschten Erfolg dass nach klick auf den Button und richtigem ausführen des codes der Datensatz gleich erscheint oder gelöscht ist.

Wäre nett wenn mir hier jemand einen Tipp geben könnte wie dies in den griff zu bekommen ist

Hallo,

was ist „sehr lange“?

Wo befinden sich die Tabellen? (Netzwerk, lokal, Server)

Um welches DB-System handelt es sich?

Wie werden das Ändern und das Löschen der Daten durchgeführt?

Handelt es sich um ein gebundenes oder ungebundenes Formular?

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!

Es dauert sehr lange bis der neue Datensatz angezeigt wird, bzw. eine änderung angezeigt wird oder der gelöschte datensatz weg ist.

Die Tabellen befinden sich in einem Backend auf dem Server. Front und Backend liegen im gleichen pfad.

Es handelt sich um ein ungebundenes Formular und die Änderungen werden per Code mit .addnew bzw. .delete ausgeführt.

Code funktioniert soweit einwandfrei.

Es handelt sich um ein DAO System

Hallo,

WIE LANGE denn nun?

" Front und Backend liegen im gleichen pfad."

ist vermutlich eine(!) der Ursachen.

Das FE sollte immer lokal liegen.

Weitere Ursachen könnten die Sperrvorgänge in Access sein. Abhilfe schafft da ein Recordset, der auf eine Tabelle beim Starten der DB geöffnet wird und es während der gesamten Dauer der Access-Sitzung bleibt.

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!

Also so circa 5-10 sek. was aber doch irgendwie unangenehm ist weil man sich dann immer nicht sicher ist ob es eingetragen ist.

Nach der Zeit erscheint oder verschwindet die änderung ordnungsgemäß.

Des heißt ich soll bei meinem Startformular beim laden meine Database laden und hier nur mit currentdb zugreifen und dann meinen jeweiligen recordset aufrufen?

Nur zum verständnis. Wieso sollte das frontend auf dem laufwerk langsamer sein wie lokal? dürfte doch eigentlich nichts mit der zeit zu tun haben oder?

Erstmal schon mal vielen Dank für die ersten Infos.

Mfg
Flo

Hallo,

nein, einen permaneneten zusätzlichen Recordset geöffnet lassen.

Ein Netzwerkbetrieb (~10 MByte/s ,dazu noch Overhead-Verlust und andere) ist doch offensichtlich langsamer als ein Pata/Sata/SCSI-Bus-Betrieb (~~ 500 MByte/s).

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!