vb.net 2010 Синхронизация двух баз данных доступа - PullRequest
2 голосов
/ 16 сентября 2011

Я пишу настольное приложение, которое использует базу данных основного доступа, которая будет размещена на центральном сервере, но будет ноутбук с приложением, которое имеет автономный режим, поэтому записи могут создаваться вне офиса.Когда ноутбук возвращается, я хочу, чтобы его нужно было синхронизировать обратно с основной базой данных.

Кто-нибудь получил какие-либо указатели на способ сделать это, я кратко прочитал о JRO, но есть ли альтернативный / лучший метод?

Первоначально я собирался написать какой-то специальный код, чтобы сделать это, но подумал, что проверю, чтобы убедиться, что там что-то уже нет.

Ответы [ 4 ]

3 голосов
/ 19 сентября 2011

Jet Replication - идеальное решение для такого рода сценариев, поскольку вы можете использовать простейшую форму Direct Replication и не должны иметь никаких внешних зависимостей.

Предполагается, что ваш сервер назван\ HomeOffice \, а база данных называется "MainDatabase.mdb" и хранится в папке \ AccessDatabases \. Вы можете использовать этот код за командной кнопкой для синхронизации с ноутбука на сервер:

  Dim dbServer as DAO.Database

  Set dbServer = DBEngine.OpenDatabase("\\HomeOffice\AccessDatabases\MainDatabase.mdb")
  dbServer.Synchronize CurrentDB.Name
  dbServer.Close
  Set dbServer = Nothing

Теперь нет обработки ошибок, и вы не проверили наличие конфликтов, поэтому вам нужно было бы сделать больше, чем это, но это поможет вам начать с основ.

См. Jet Replication.Wiki для получения дополнительной информации о Jet Replication.

3 голосов
/ 16 сентября 2011

Access (по крайней мере, до 2003 года) имеет встроенные возможности для репликации базы данных, которую было бы гораздо лучше использовать, чем использовать собственную.

Вот некоторая документация по этой функции: Репликация базы данных

0 голосов
/ 16 сентября 2011

Существует Microsoft Sync Framework , который совместим с ADO.NET и MS SQL Server / SQL Server Compact, но это не маленький компонент, больше похожий на многокомпонентный каркас.

0 голосов
/ 16 сентября 2011

MS Sync Framework может быть ответом, но его немного сложно настроить ... http://msdn.microsoft.com/en-us/sync/bb821992

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...