Access wird immer größer

Hallo,

ich arbeite an einer Accesse-Datei, wo ich Buttons in Formulare einbaue, VBA programmiere und es irgendwann schließe.
Dabei fällt mir auf, dass die Access Datei von der Dateigröße immer größer wird…auch wenn ich nur kleine Änderung durchgeführt habe.

Kann man dies wieder verkleinern oder es irgendwie unterbinden, dass es sich nicht unnötig aufbläht ?

Danke und Gruß, Marsi

Hallo, Marsi!

ich arbeite an einer Accesse-Datei, wo ich Buttons in
Formulare einbaue, VBA programmiere und es irgendwann
schließe.
Dabei fällt mir auf, dass die Access Datei von der Dateigröße
immer größer wird…auch wenn ich nur kleine Änderung
durchgeführt habe.

Erzeuge mal ein Formular von etwa 1 MB Größe. Dann kopiere das ganze 50 mal. Du erhältst eine DB von 50 MB Größe. So weit, so logisch. Dann lösche die Formulare, und die DB ist wie groß? Richtig, 100 MB. Schon mal gehabt. Lustig…

Kann man dies wieder verkleinern oder es irgendwie
unterbinden, dass es sich nicht unnötig aufbläht ?

Zum einen gibt’s die Funktion „Extras“-„Datenbank-Dienstprogramme“-„Datenbank reparieren und komprimieren“ (bei alten Access-Versionen noch zwei getrennte Menüpunkte). Ruf das regelmäßig auf, wenn Dir die DB zu groß wird.

Außerdem gibt’s unter „Extras“-„Optionen“-„Allgemein“ ein Kreuzchen für „Beim schließen komprimieren“. Das solltest Du ggf. auch aktivieren.

Andere Datenbanken kannst Du mit CompactDatabase aus VBA heraus komprimieren.

Gruß, Manfred

Hallo,

Kann man dies wieder verkleinern oder es irgendwie
unterbinden, dass es sich nicht unnötig aufbläht ?

zum einen:
[Extras] - [Datenbank-Dienstprogramme …] - [Datenbank komprimieren und reparieren]

zum anderen:
neue DB erstellen und sämtliche Formulare, Abfragen usw (alles halt) aus der alten Datenbank importieren.

Gruß
D. Scholdei

Hallo.

Kann man dies wieder verkleinern oder es irgendwie
unterbinden, dass es sich nicht unnötig aufbläht ?

Wie man es verkleinert, weißt Du ja jetzt. Das Aufblähen ist übrigens nicht unnötig - alle relationalen Datenbanksysteme arbeiten so. Man kann sich das so vorstellen, dass Du jedesmal, wenn Du eine Änderung vornimmst, das gesamte Objekt - und zwar mit allem Zipp und Zapp - kopiert und neu auf die Platte geschroben wird. Die alte Kopie des Objektes existiert weiterhin, hat nur, sozusagen, ein Unlesbarkeitszeichen bekommen.

Sinn und Zweck der Übung : Professionelle DB sind transaktionsgesteuert. Jede einzelne Transaktion kann rückgängig gemacht werden. Dazu ist es aber erforderlich, dass alle Schritte - also auch die Änderungen an DB-Objekten selbst - in zeitlich umgekehrter Reihenfolge zurückverfolgt werden können.

Stichworte zu diesem traurigen Thema für Gugel : „Transaktion“, „Rollback“, „Commit“, „Reorganisation“.

Gruß kw
*tuskaou*