Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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.

Geschrieben

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

Geschrieben

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

Geschrieben

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

Geschrieben (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 von Amstelchen
Geschrieben

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.

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...