begin process at 2012 05 27 02:53:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

Access

 > 

Divers

 > 

Synchroniser plusieurs base de donnees access


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Synchroniser plusieurs base de donnees access

jeudi 24 décembre 2009 à 02:49:27 | Synchroniser plusieurs base de donnees access

hannao

Bonjour à tous,

Voilà je viens de rencontrer une association qui a un projet de création d'une base de donnée sous (et oui c'est un choix !).
Il ne dispose pas de serveur.
Pas de réseau.
Seulement des postes individuels et ce sur plusieurs site qui ne stocke pas nécessairement les mêmes infos, mais certaines ce recoupent comme par exemple le nom de bénéficiaire, d'actions, etc...
Chacun désire pouvoir travailler indépendamment sur la base de donnée installée sur son poste personnel.

Par contre ils doivent confronter leur base régulièrement, c'est à dire pouvoir synchroniser l'ensemble de ces bases.

Donc plusieurs questions ?
Si l'individu X enregistre un bénéficiaire identifié par un ID unique et modifie des données sur celui-ci comme par exemple maintenant il est aussi sur cette action, il est rentré dans le dispositif à telle date etc...Que ce passera t il au moment de la synchronisation puisque l'ID unique existe peut-être déjà pour un autre bénéficiaire sur un autre poste utilisateur. Conflit ? Comment cela ce gère ? est-ce possible ?
Est-il possible de récupérer uniquement les infos qui ont été modifiées ?

J"ai vu l'idée de replica sur access mais avec des risques de perte de données et des contraintes éventuelles type copier-coller.

Enfin je me demande si c'est possible et dans ce cas quel axe de recherche prendre

Merci de votre aide

jeudi 24 décembre 2009 à 10:35:58 | Re : Synchroniser plusieurs base de donnees access

JeremyLecouvert

Salut,

je dirais que là, ça pue!

Si tu ne peux pas utiliser un identifiant pour retrouver tes données, c'est plutôt mal barré! Il faudrait alors que tuutilise d'autres données pour identifier de manière unique l'enregistrement voulu. Pour une campagne, c'est peut-être moins bloquant, tu peux utiliser le nom de la compagne/action comme clé primaire (ex: "SIDACTION-2009" etc...). Pour les bénéficiaires, c'est plus chiant. Tu vas devoir les rechercher par Nom + Prénom + Adresse. En effet, tu peux avoir 2 homonymes recensés dans ta base; par contre, 2 homonymes qui ont la même adresse, c'est quand même beaucoup plus rare!!
Le seul problème, c'est que si cette personne déménage, et que le but de la manoeuvre est justement de modifier son adresse, tu ne peux pas te baser dessus pour la recherche. Il faudra trouver d'autres champs de recherche, ou procéder par élimination. Par exemple, recherche sur nom + prénom, puis s'il y a plusieurs résultats on filtre avec un 3° critère etc...

Sinon, il y a peut-être une solution qui éviterait tout ce merdier!

Je pense qu'il te faut obligatoirement une base de référence pour centraliser les données. S'il n'y a pas de serveur, il faudra choisir un des postes pour tenir ce rôle.
Puisque tes bases vont être recoupées périodiquement dans une seule base centrale, tu peux prévoir dans tes tables un champ Identifiant, que tu ne renseignes pas à la création dans ta base locale. Au moment de remonter les données dans la base de référence, tous les enregistrements qui n'ont pas ce champ renseigné (=>tous les nouveaux enregistrements), tu leur attribues un nouveau numéro (en utilisant une séquence) dans ta base centrale, après quoi tu pourras redescendre ce numéro d'Id vers les bases annexes pour qu'elles utilisent toutes le même identifiant.
Comme ça, tu pourras utiliser l'Id en local pour tes recherches, et s'il n'existe pas ça signifiera que c'est un nouvel enregistrement. Attention toutefois, il faudra s'assurer que 2 personnes n'ont pas créé le même enregistrement chacun de leur côté au moment d'intégrer les données dans la base centrale.

Voilou, j'espère que ça pourra t'aider..

Si l'envie te prend de travailler, assied-toi et attend qu'elle te passe! (vieux -et faux!- dicton corse)
jeudi 24 décembre 2009 à 16:47:04 | Re : Synchroniser plusieurs base de donnees access

hannao

Merci pour cette réponse effectivement cela à l'air peu pratique et difficile à mettre en place
mercredi 6 janvier 2010 à 21:45:08 | Re : Synchroniser plusieurs base de donnees access

hannao

Bonjour bonjour,

j'ai pensé à autre chose au lieu de mettre une clé primaire auto incrementée si j'utilise par exemple comme clé primaire le nom, prénom,date de naissance et date+heure pour le nouvelle comme clé, je peux déterminer le dernier enregistrement et par conséquence mettre à jour la base et ces réplica
Non ?
jeudi 7 janvier 2010 à 10:10:36 | Re : Synchroniser plusieurs base de donnees access

JeremyLecouvert

Salut,

Oui, effectivement si tu as un champ discriminant (dateNaissance, timestamp...) il peut te servir à composer ta clé primaire et à te dispenser du n° identifiant. Après c'est une question de choix, perso je préfère avoir un champ Identifiant, parce qu'après dans les requêtes c'est toujours moins chiant de faire une jointure sur un champ unique que sur 3 ou 4 champs.

Si l'envie te prend de travailler, assied-toi et attend qu'elle te passe! (vieux -et faux!- dicton corse)
jeudi 7 janvier 2010 à 13:10:48 | Re : Synchroniser plusieurs base de donnees access

hannao


Bonjour,

Oui je suis d'accord avec toi, mais comme je l'ai expliqué dans mon premier message, si je créé un id unique pour chaque bénéficiaire et que une autre personne sur son propre poste fait un enregistrement nouveau, il risque au moment de la synchronisation des bases d'y avoir un conflit, non ?
C'est pour cette raison que j'ai pensé& à faire un identifiant sur plusieurs champs.
Si tu connais bien sur un autre moyen je suis preneur
Merci de ta réponse


Cette discussion est classée dans : access, base, possible, synchroniser, bénéficiaire


Répondre à ce message

Sujets en rapport avec ce message

Quel outil pour SqlServer [ par padurand ] Mon site tourne avec une base de donnees Access, et des pages ASP.Je voudrais remplacer Access par SqlServer ... a priori il ne devrait pas y avoir de sql et access [ par benimane ] je develope un programme avec VB6 et access et je veux faire une autre connection à SQL Server est ce possible?et comment je peuq faire pour copier ce changer le nom d'un champ dans une base access [ par oluha ] BonjourJ'aimerai savoir s'il est possible de changer le nom d'un champ d'une base access avec une requête sql ?En cherchant sur le web j'ai trouvé ces base de donnée access [ par jecky ] salut à tous,                je suis jeff, j'aurais aimé que vous m'aidez  à resoudre un problème au niveau d'une base de donnée access que je suis en [SQL Server] Problème avec serveur lié Access distant [ par oluha ] BonjourJ'ai besoin de transférer une table d'une base Access vers SQL Server dans mon programme en Delphi (et vis versa). Comme le BatchMove déconne q Windows CE [ par seuth ] Bonjour, je voudrais savoir s'il est possible d'acceder à une base de donnée sql server 2000 sous windows ce?si ce n'est pas possible quelle base de d EasyPHP distant [ par seuth ] Bonjour,je souhaiterai savoir s'il est possible d'acceder a la base de donnees mysql d'easyphp a partir d'un pc distant?Si c'est possible comment le c utilisation d'une base de données access [ par camboulit ] Bonsoir, Je suis en train de construire une Base et j'aimerai avoir votre avis sur la construction de mon MCD que voici : j'ai 3 tables :Biens : NumBi PLUS POSSIBLE DE DEFINIR UNE COLONNE NULL AVEC ACCESS 2007 ?? [ par romagny13 ] Bonjour je viens de m'apercevoir d'un truc avec Access 2007 qui m'a vraiment étonnéest ce que je me trompe ou est ce bien ce que je me suis apercu ?on base Access multi utilisateurs et clé auto incrementee [ par romagny13 ] Bonjourma question est simpledans le cas d'une base de données ACCESS utilisée par plusieurs utilisateurspeut on se permettre reellement d'utiliser le


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,870 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales