Это довольно часто задаваемый вопрос среди разработчиков Access.
Есть две части:
код для резервного копирования и сжатия базы данных, который вы запланируете на сервере.
код, который вы вводите в свой интерфейс для автоматического выхода из системы всех пользователей одновременно, что позволяет запускать код из # 1.
Как правило, офис открыт только, например, с 8:00 до 18:00 по местному времени, поэтому обычно безопасно выгнать всех около полуночи, чтобы серверная часть была доступна для резервного копирования и сжатия, скажем, в 1:00, при подготовке к обычное резервное копирование файлового сервера, которое может произойти, скажем, в 2 часа ночи.
VBScript для резервного / компактного относительно легко написать. Если вам нужна помощь с этим, спросите.
Для внешнего интерфейса у вас должна быть скрытая форма, которая открывается, когда приложение открыто с таймером, установленным в полночь и закрывающим приложение. Насколько тщательно вы хотите получить с этим зависит. Потенциальные ловушки могут возникнуть, если пользователь начал запись, и она находится в состоянии, которое не может быть сохранено (по каким-то причинам не выполняется правила проверки). Это может быть сложно (вам нужно будет поймать ошибку, отменить запись пня, а затем закрыть), но лучше спроектировать свои приложения, чтобы пользователи никогда не могли создавать записи, которые нельзя сохранить.
Ключевым моментом является то, что вы должны спланировать оба конца этого, планируя и закрывая все соединения, которые остаются на время, которое запланировано для резервного копирования / сжатия.