2016-06-29 4 views
1

J'utilise golden gate pour répliquer une table d'une base de données vers plusieurs bases de données. La partie difficile est que dans un DB, la table doit être répliquée complète (toutes les colonnes de la table), mais dans le reste des DB, la table doit être répliquée à moitié, ce qui signifie seulement quelques colonnes, pas toutes.Oracle Golden Gate COLSEXCEPT au niveau de la réplication

Est-il possible d'avoir une exception de colonnes au niveau de la réplication?

Je sais que c'est possible au niveau de l'extraction, mais cela ne correspond pas à mon scénario.

+0

Il est possible de mapper des colonnes sélectionnées. Quel est le problème ici? –

+0

Je suppose que vous faites référence à _COLMAP_, mais je ne suis pas sûr comment cela fonctionne. Si je ne spécifie pas 'USEDEFAULTS' et que vous mappez seulement quelques colonnes, les autres colonnes qui ne sont pas spécifiées sont ignorées? –

+0

Merci pour l'aide, cela fonctionne comme prévu avec COLMAP. –

Répondre

0

COLSEXCEPT est un paramètre EXTRACT uniquement. Il ne peut pas être utilisé en réplication.

Pour les tables comportant un grand nombre de colonnes, l'utilisation de COLEXCEPT peut aider à exclure certaines colonnes au lieu d'entrer toutes les colonnes du fichier d'extraction.

0

Vous devez résoudre ce problème du côté REPLICAT en mappant les colonnes nécessaires à la table cible à l'aide de COLMAP. Je pense que USEDEFAULTS ne fonctionnera pas dans ce cas pour REPLICAT puisque vous avez mentionné que vous avez besoin de quelques colonnes seulement (Est-ce que cela signifie que la structure de table est différente de SOURCE à TARGET ???)