2011-11-29 1 views
1

J'ai une application WPF avec back-end comme Oracle11gR2. Nous devons permettre à notre application de fonctionner à la fois en ligne et hors ligne (déconnecté). Nous utilisons l'édition standard Oracle (avec instance unique) comme base de données client. J'utilise des nombres Sequnece pour les colonnes de clé primaire. Est-il possible de synchroniser ma base de données client et serveur sans problème dans les colonnes Numéro de séquence. Veuillez noter que nous limiterons la création de données de base (maître) à créer uniquement sur le serveur.Oracle11g Base de données Synchornization

Répondre

0

Il y a quelques approches à prendre ici.

1- Écrivez le processus de synchronisation pour reconstruire les tables du serveur (sur le client) à chaque fois avec SELECT INTO. Une fois terminé, RENOMMER la table en cours à une table "temp" et RENOMMER la table nouvellement créée avec le nom approprié. Le processus de synchronisation doit supprimer la table temporaire comme l'une de ses premières étapes. Enfin, recréer les index et vous devriez être bon à faire.

2- Créez une sauvegarde de la base de données côté serveur, écrivez un script shell pour le copier et le restaurer sur le client.

Chacune de ces options préservera vos numéros de séquence. Lequel vous choisissez dépend vraiment de vos compétences. Si vous êtes plus un développeur, vous pouvez faire le travail n ° 1. Si vous avez des compétences Oracle DBA, vous devriez être en mesure de faire le # 2 de travail. Étant donné que vous utilisez 11g, il est peut-être plus simple de faire cela avec Data Pump.

+0

Je suis en train de faire la synchro de données en utilisant ma propre logique en utilisant une gamme différente de numéros de séquence (1-1 million en cleinet,> 1 million en serveur). Mais on m'a demandé de chercher la soultion fournie par Oracle. Base de données 11g. J'explore les vues matérialisées, le serveur Oralce Mobile. Avez-vous une idée à ce sujet? S'il vous plaît noter qu'il y aura au moins 2000 utilisateurs pour notre application et 1000 d'entre eux peuvent utiliser la base de données en même temps. Donc la soultion devrait être efficace et évolutive. – saravana

Questions connexes