Steve: Access-Datebank kopieren

hallo zusammen,

ich habe eine anwendung geschrieben in der userdaten über win32::odbc in einer access-datenbank verwaltet werden.

nun möchte ich mit "use File::Copy;" und "copy-Befehl" jeden tag eine sicherung der ganzen datenbank machen.

daten.mdb ==> daten.bak

kann es probleme gegen wenn ein user gerade per sql-anweisung in die datenbank schreibt und gleichzeitig der copy-befehl ausgeführt wird?

kann man verhindern, dass bei so einem fall das programm nicht beendet wird?

bei textdateien habe ich früher flock() verwendet. kann man damit auch access-dateien sperren?

danke im voraus.

steve

  1. kann es probleme gegen wenn ein user gerade per sql-anweisung in die datenbank schreibt und gleichzeitig der copy-befehl ausgeführt wird?

    ja, da die .mdb ja eine datei aus dem file-system ist.

    kann man verhindern, dass bei so einem fall das programm nicht beendet wird?

    welches programm?

    bei textdateien habe ich früher flock() verwendet. kann man damit auch access-dateien sperren?

    warum nicht?

    es dürfte dann aber probleme geben, da auch die access-db-engine da nicht mehr rankommt.

    access verwaltet das locking selbst mit einer datei *.lck, sobald der erste die datei geöffnet hat.
    die existenz dieser datei läßt also erkennen, das jemand mit der db arbeitet.
    beim fehlen der *.lck kann die datei problemlos über das filesystem kopiert werden.