Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL > Débuter
Débuter Forum d'entraide : Débuter en base de données avec PostgreSQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/03/2011, 15h19   #1
Invité de passage
 
Inscription : mai 2008
Messages : 22
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 22
Points : 0
Points : 0
Par défaut Relevés terrain multi-équipes

Bonjour

Je dois mettre en place un système qui permettra à plusieurs équipes terrain de relever des infrastructures sur Postgres. Les bases de données ne pourront pas être connectées à Internet et doivent être synchronisées entre elles à la fin de la journée.

Quelqu'un aurait une ou deux astuces? Je ne devrais (évidemment?) pas choisir le type "serial" comme unique id, puisqu'il y aurait des conflits lors de la création de nouvelles entrées... etc.

Quelqu'un a déjà mis en place ce genre de système ?

Martin F
martinfa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2011, 16h00   #2
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 953
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 953
Points : 17 773
Points : 17 773
PG ne dispose pas d'outils avancés comme ceux de SQL Server pour gérer de la réplication.... Mais en gros les principes sont les suivants :
1) rien ne vous empêche d'utiliser la notion de séquence et d'intercaler des valeurs en fonction du poste.
En gros si vous avez 100 postes, vous pouvez faire :
CREATE SEQUENCE tablename_colname_seq;
CREATE TABLE tablename (colname integer NOT NULL DEFAULT (nextval('tablename_colname_seq') * 100) + p));

Avec p étant le n° de poste....
2) pour éviter les conflits de réplication, faites en sorte de rajouter à toutes vos tables deux colonnes. L'une contenant un GUID qui est mis à jour à chaque INSERT ou UPDATE (trigger à prévoir) et l'autre la date heure d'insertion ou de modif.
Ceci afin de savoir quelle a été la mise à jour la plus récente et notamment pour les tables de jointure ou l'id n'est pas auto incrémenté quelle est la bonne version et s'il s'agit des même infos ou non....

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h17.


 
 
 
 
Partenaires

Hébergement Web