volker81 Geschrieben 15. September 2008 Geschrieben 15. September 2008 Hi. Folgender Hintergrund. Spezielle Anwendungssoftware die Infos in deine DB schreibt. Diese Datenbank wächst sehr schnell, bis dann bei 2GB Größe Schluss ist. Danach muss sie manuell über Access komprimiert werden weil sonst das Prog nicht mehr funktioniert. Geht aktuell nur so dass der User sich meldet wenn "nix geht mehr" Ich suche ein kleines kostenloses Tool oder ein Script, dass mir Ordner - evtl auch von Netzlaufwerken - überwacht und irgendwie laut gibt, sobald eine definierte Größe überschritten ist. Zitieren
flashpixx Geschrieben 15. September 2008 Geschrieben 15. September 2008 Nimm anstatt Access einen SQL Server, das Limit mit 2GB ist ja wohl sehr seltsam, gerade bei Datenbanken, wo schnell mal 2GB zusammen kommen. Und warum macht das Programm Probleme, das Programm sieht nur die Datenbank, wie das DBMS das organisiert ist nicht Sache des Programms Phil Zitieren
volker81 Geschrieben 15. September 2008 Autor Geschrieben 15. September 2008 Das Programm schreibt halt eine MDB-File. Das lässt sich nicht ändern. Und die ist auf 2GB begrenzt. Zitieren
flashpixx Geschrieben 15. September 2008 Geschrieben 15. September 2008 Das "komprimieren" entfernt nur Datensätze und Objekte physikalisch aus der MDB Datei. Die Datensätze werden nicht direkt gelöscht, sondern nur als "zu löschen" gekennzeichnet. Das komprimieren bringt somit, wenn das Programm kontinuierlich neue Daten schreibt, nichts Phil Zitieren
Enno Geschrieben 15. September 2008 Geschrieben 15. September 2008 ich würde mir auch erstmal gedanken machen ob nicht doch ne SQL-Datenbank der Bessere Weg wäre. Klar, wenns nicht anders geht: WatchDirectory - Monitor a directory for changes and react! Zitieren
volker81 Geschrieben 15. September 2008 Autor Geschrieben 15. September 2008 Ich suche ein kleines kostenloses Tool ... WatchDirectory kenne ich. Geht hier nur um einen Arbeitsplatz, da rentiert das nicht. Hab jetzt behelfsmäßig was mit Sysinternals' Filemon realisiert damit ich einen groben Überblick habe. Aber ist nicht das gelbe vom Ei Zitieren
Amstelchen Geschrieben 15. September 2008 Geschrieben 15. September 2008 (bearbeitet) ich sehe die möglichkeit, die datenbank mit der in den optionen einstellbaren "beim schließen komprimieren" automatisch kleiner machen zu lassen. da hier aber offensichtlich ein automatismus die datenbank ohne access beschreibt (Jet OLE DB treiber?), könntest du einfach einen täglichen batch laufen lassen, der die datenbank öffnet, und beim schliessen wieder komprimiert. addendum für den aufruf (hier: via VBS bzw. WSH): Set Engine = CreateObject("DAO.DBEngine.35") Engine.CompactDatabase "path\database.mdb", "path\compacted_database.mdb" Set Engine = CreateObject("JRO.JetEngine") Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=path\database.mdb", _ "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=path\compacted_database.mdb" s'Amstel Bearbeitet 15. September 2008 von Amstelchen Zitieren
Thombo Geschrieben 22. September 2008 Geschrieben 22. September 2008 Vorschlag: per Taskplaner (einmal am Tag? 2mal am Tag? wie schnell wird die DB so groß?) einen Job starten der die DB komprimiert. Entweder per Batchdatei wenn die DB eine gewisse Größe überschritten hat, oder halt jedesmal bei aufruf des Jobs prophylaktisch einmal komprimieren. msaccess.exe hat dazu nen Schalter. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.