Aidez-moi à trouver une solution à un problème (pas si unique).Existe-t-il un moyen de synchroniser les tables (bidirectionnelles) entre un serveur mysql et un MS Access local?
Mon groupe de recherche a des dispositifs GPS attachés aux animaux migrateurs. De temps en temps, une technologie de recherche sera à portée d'un animal et aura la chance de télécharger tous les points enregistrés. Chaque individu crache un seul dbf et les nouveaux emplacements sont juste ajoutés à la fin (donc le fichier est juste cumulatif).
Ces données doivent être partagées entre un groupe de recherche. Tout le monde (à part moi) veut utiliser l'accès, donc ils peuvent faire de petites modifications et préfèrent cette interface. Ils n'aiment pas utiliser MySQL.
La solution que je suis venu avec est:
a) La personne qui télécharge le fichier va vers une page Web, entre l'identification des animaux dans un formulaire, choisit .dbf fichier et ajouts à une base de données MySQL sur le serveur (Je dois encore écrire du code php pour lire le dbf et écrire des instructions d'insertion sql à partir de celui-ci).
b) Tout le monde se synchronise depuis sa base de données d'accès local vers le serveur. (Ceci est nativement possible d'accès mais très maladroit).
Y at-il un outil (de préférence open source), qui peut comparer une table d'accès à la table mysql et synchroniser les deux (les deux façons)?
Ou bien quelqu'un a-t-il une solution plus élégante?
Le but ultime est de permettre à tous d'avoir accès aux données les plus récentes sur leur ordinateur en utilisant leur application de base de données préférée.
GUID dans Access a beaucoup de problèmes (http://trigeminal.com/usenet/usenet011.asp?1033). Je ne vois pas pourquoi c'est même nécessaire. La question initiale indique que les tables sont en addition, donc avec un champ d'auto-incrémentation, vous n'aurez aucun problème à déterminer quels enregistrements ont été ajoutés sans avoir besoin de savoir quoi que ce soit à propos de quand. Je ne vois pas comment un GUID serait plus facile qu'un champ d'auto-incrémentation, sauf si le nombre d'enregistrements impliqués dépasse les valeurs possibles pour le champ. –
@ david-w-fenton, eh bien, comme je vois le problème: chaque utilisateur a une réplique MS Access de la base de données MySQL mise à jour. Chaque utilisateur peut apporter des modifications (ajouter de nouvelles données) à sa base de données de répliques et synchroniser les modifications avec la base de données MySQL plusieurs minutes/heures plus tard. Je vois un problème de concurrence, l'utilisation d'UUID pour de nouvelles entités est une solution. – newtover