Есть ли способ синхронизации (двухсторонних) таблиц между сервером MySQL и локальным MS Access? - PullRequest
1 голос
/ 10 апреля 2010

Помогите мне найти решение (не столь уникальной) проблемы.

В моей исследовательской группе GPS-устройства подключены к мигрирующим животным. Время от времени исследовательская техника будет находиться в пределах досягаемости животного и получит возможность загрузить все зарегистрированные очки. Каждый человек выплевывает один dbf, и новые местоположения просто добавляются в конец (поэтому файл просто накапливается).

Эти данные должны быть переданы исследовательской группе. Все остальные (кроме меня) хотят использовать доступ, чтобы они могли вносить небольшие изменения и предпочитать этот интерфейс. Они не любят использовать MySQL.

Решение, которое я придумал:

a) Человек, который скачивает файл, переходит на веб-страницу, вводит идентификатор животного в форму, выбирает файл .dbf и загружает его в базу данных mysql на сервере (мне все еще нужно написать php-код, чтобы прочитать dbf и напишите из него SQL-оператор вставки).

b) Каждый синхронизируется из своей локальной базы данных доступа к серверу. (Это возможно при доступе, но очень неуклюже).

Существует ли инструмент (предпочтительно с открытым исходным кодом), который может сравнивать таблицу доступа с таблицей mysql и синхронизировать два (оба способа)?

Или у кого-нибудь есть более элегантное решение?

Конечная цель - предоставить каждому пользователю доступ к самым последним данным на своих компьютерах с помощью предпочитаемого ими приложения базы данных.

Ответы [ 3 ]

0 голосов
/ 10 апреля 2010

Очевидный совет для реализации:

  1. Использование UUID () в MySQL и GUID в Access в качестве уникальных идентификаторов
  2. Сохранить временную метку последнего изменения в синхронизированных строках

Таким образом, вы легко сможете отличить обновления записей от новых записей и сможете объединять изменения даже сами, используя ODBC.

0 голосов
/ 11 апреля 2010

Есть ли инструмент (желательно открытый источник), который может сравнить доступ таблица в таблицу MySQL и синхронизировать два (в обе стороны)?

Вы смотрели это сообщение SuperUser ?

Кроме того, ты погуглил? Я прогуглил «доступ к базам данных сравнения», а в третьей ссылке на странице перечислены несколько различных пакетов программ для сравнения баз данных.

Кажется, что некоторые позволяют синхронизировать данные, а другие нет.

Для этого я запрограммировал многоузловую синхронизацию между Access и MySQL, и это не просто , что сложно, особенно если вы можете запустить его из Access со связанными таблицами ODBC, указывающими на живой MySQL таблицы данных. Особенно в случае, когда большинство новых данных в Access являются новыми записями, это не должно быть таким сложным.

С другой стороны, то, что я считаю не таким сложным, может быть слишком сложным для вас - я не знаю, насколько вы знакомы с SQL, DAO и VBA.

0 голосов
/ 10 апреля 2010

Можно использовать ADO или ODBC с Access и MySQL для запуска запросов на компиляцию и обновление.Это достаточно просто автоматизировать с помощью VBA.

Это может представлять интерес: Каков наилучший способ синхронизации данных между MS Access и MySQL?

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