Prise en charge de la clé primaire et des clés automatiques
La clé primaire ou l'index unique est créé en fonction des informations de colonne de clé dans les métadonnées de la table. Le type de clé créé dans la table cible dépend de la capacité d'annulation des colonnes de clé source indiquées dans les métadonnées de la table source disponibles dans le fichier trace.
Pour créer un index unique et une clé primaire, tenez compte des éléments suivants :
-
Un index unique est généré, le cas échéant, des colonnes de clé source autorisant les valeurs NULL.
-
Une clé primaire est créée lorsque toutes les colonnes de clé source ne peuvent pas être NULL.
-
Si une pseudo-clé est utilisée sur la source, aucune clé primaire ou unique n'est établie sur la table cible.
Si la fonctionnalité AUTOSCHEMA est activée et que le processus Replicat traite une trace source qui ne contient pas les informations de l'indicateur pseudo-key (trail écrit par une ancienne extraction où la prise en charge de pseudo-key n'a pas été implémentée), un message d'avertissement s'affiche pour l'utilisateur et aucune clé n'est créée sur la cible. Le processus Replicat utilise toutes les colonnes viables comme clé. Toutefois, vous pouvez le remplacer à l'aide de KEYCOLS dans le fichier de paramètres.
Remarque : KEYCOLS ne fonctionne qu'en cas d'instruction MAP explicite, mais pas en cas d'utilisation de caractères génériques.
Remarque : l'ordre des colonnes de clé sur la cible ne peut pas être maintenu en tant que soruce car le TDR ne dispose pas de ces informations.
Pour plus d'informations sur l'utilisation de KEYCOLS afin d'indiquer une clé personnalisée pour différentes bases de données, reportez-vous aux rubriques suivantes : Db2 z/OS : Garantir l'unicité des lignes pour les tablesMySQL : Garantir l'unicité des lignes pour les tables Oracle : Garantir l'unicité des lignes pour les tables