Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (Français) » Aide contextuelle » Aide du module de connexion MobiLink » Onglet Mappages

 

Mappages : Mappages de tables

Le volet Mappages de tables contient une ligne par mappage de tables entre la base de consolidée et la base distante. Vous pouvez modifier, ajouter ou supprimer des mappages de tables.

Les valeurs des colonnes sont celles que vous avez sélectionnées dans l'assistant de création de modèle de synchronisation ou les valeurs par défaut de l'assistant si vous n'avez effectué aucune sélection. Vous pouvez les modifier table par table dans ce tableau.

Le volet Mappages de tables contient les colonnes suivantes :

Colonne ordinale   Cette colonne n'a pas de titre. Elle numérote les lignes du tableau. Si vous modifiez l'ordre de tri des tables (en cliquant sur les en-têtes de colonne), cette réorganisation est sans effet sur les numéros de ligne. Des icônes apparaissent dans cette colonne si une table distante a été ajoutée, marquée pour être supprimée ou modifiée.

Colonne Etat   Cette colonne vous informe en cas de message d'erreur, d'avertissement ou d'information concernant le mappage de tables. Si une icône apparaît dans cette colonne, sélectionnez le mappage de tables, puis ouvrez l'onglet Etat du volet Détails pour afficher le contenu du message.

Colonne Table consolidée   Il s'agit de la table que vous synchronisez dans la base de données consolidée. Le nom du propriétaire de la table est placé entre parenthèses. Seules les tables consolidées synchronisées sont affichées. Si vous ne souhaitez plus qu'une table consolidée soit synchronisée, annulez son mappage, soit en cliquant sur la ligne avec le bouton droit dans le volet Mappages de tables, puis en choisissant Supprimer, soit en choisissant comme Sens de mappage Non synchronisé, puis en enregistrant le modèle.

L'onglet Mappages de colonnes du volet Détails permet de vérifier le mappage des colonnes consolidées sur les colonnes distantes pour le mappage de tables sélectionné.

Colonne Sens de mappage   Sens de la synchronisation. Les options disponibles sont Non synchronisé, Bidirectionnel, Transférer vers table distante uniquement et Transférer vers table consolidée uniquement. Choisir Non synchronisé supprime le mappage de tables.

Colonne Table distante   Il s'agit de la table distante à synchroniser avec la table consolidée correspondante. Vous pouvez changer de table distante en cliquant sur la colonne et en en choisissant une autre dans la liste des tables distantes.

A défaut de table distante sélectionnée, le mappage de tables est incorrect.

Colonne Type de transfert   Vous pouvez en visualiser et modifier la mise en oeuvre dans l'onglet Type de transfert du volet Détails. Les options disponibles dans cette colonne sont les suivantes :

  • Estampille   Les données sont transférées uniquement si elles ont subi des modifications depuis le dernier transfert. Pour permettre le transfert par estampille, chaque table consolidée doit contenir une colonne timestamp afin d'identifier le moment auquel les lignes ont été modifiées. Pour ce faire, il suffit d'ajouter une colonne dans les tables de la base de données consolidée ou de créer des tables fictives. Les tables fictives sont créées avec le même propriétaire que la table sous-jacente. Lorsque vous sélectionnez Estampille, les objets nécessaires sont générés au déploiement du modèle. Reportez-vous à la section Timestamp-based downloads.

  • Cliché   Toutes les données de la table consolidée sont transférées à chaque synchronisation, même si elles l'ont déjà été. Reportez-vous à la section Snapshot synchronization.

  • Personnalisé   Vous pouvez écrire vos propres scripts download_cursor et download_delete_cursor au lieu de les générer automatiquement. Pour cela, utilisez l'onglet Evénements. Pour plus d'informations, reportez-vous aux sections Writing download_cursor scripts et Writing download_delete_cursor scripts.

Colonne Transférer les suppressions   Si cette case est cochée, les données supprimées dans la base de données consolidée le sont également dans les bases de données distantes.

Si vous utilisez la synchronisation par estampille et si cette colonne est sélectionnée, les suppressions de la base de données consolidée doivent être enregistrées. Pour ce faire, vous avez deux possibilités : utiliser des tables fictives (option par défaut) ou utiliser des suppressions logiques. Ouvrez l'onglet Transférer les suppressions du volet Détails pour visualiser et modifier la mise en oeuvre.

Si vous utilisez les transferts par cliché et si cette colonne est sélectionnée, toutes les lignes de la base de données distante sont supprimées avant l'ajout des lignes transférées.

Vous ne pouvez pas sélectionner cette option si le transfert est de type Personnalisé. Dans ce cas, vous devez écrire votre propre script download_delete_cursor. Pour cela, utilisez l'onglet Evénements.

Colonne Transférer un sous-ensemble   Les options disponibles dans cette colonne sont les suivantes :

  • Aucune   Transfère les mêmes données vers chaque base de données distante.

  • Utilisateur   Chaque utilisateur de synchronisation (également appelé utilisateur MobiLink) transfère uniquement les lignes dans lesquelles le nom d'utilisateur correspond à une colonne de la même table ou d'une table directement jointe. Vous pouvez visualiser ou modifier la mise en oeuvre dans l'onglet Transférer un sous-ensemble du volet Détails.

  • Distant   Chaque base de données distante transfère uniquement les lignes dans lesquelles l'ID distant correspond à une colonne de la même table ou d'une table directement jointe. Vous pouvez visualiser ou modifier la mise en oeuvre dans l'onglet Transférer un sous-ensemble du volet Détails.

    Remarque

    Il est généralement préférable d'opter pour une sélection par utilisateur ou par paramètre d'authentification car l'ID distant peut changer en cas de réinitialisation ou de remplacement de l'ordinateur distant.

  • Personnalisé   Chaque synchronisation transfère uniquement les lignes lorsque la valeur d'une expression SQL dans la clause WHERE du curseur de transfert est true. Cette option est utile lorsque que vous avez besoin de plusieurs jointures ou d'une logique de gestion particulière dans la clause WHERE du curseur de transfert. Vous pouvez afficher ou modifier cette expression dans l'onglet Transférer un sous-ensemble du volet Détails.

Colonne Transférer le sous-ensemble de suppressions   Les options disponibles dans cette colonne sont les suivantes :

  • Aucune   Il n'existe aucun sous-ensemble de suppressions à transférer.

  • Identique   Crée une copie exacte du sous-ensemble à transférer.

  • Personnalisé   Crée un sous-ensemble de suppressions à transférer personnalisé.

Colonne Détection de conflit   Les options disponibles dans cette colonne sont les suivantes :

  • Aucune   Applique toujours les mises à jour téléchargées sans vérifier l'existence de conflits. C'est avec cette option que les performances sont optimales.

  • Basée sur les lignes   Un conflit est détecté si la ligne a été mise à jour dans les bases de données distante et consolidée depuis la dernière synchronisation.

  • Basée sur les colonnes   Un conflit est détecté uniquement si la même colonne a été mise à jour pour la ligne dans les bases de données distante et consolidée. Dans le cas contraire, seules les mises à jour de colonne téléchargées sont appliquées. Si une table comporte des colonnes BLOB, la détection de conflit basée sur les lignes est utilisée.

Reportez-vous à la section Detecting conflicts.

Colonne Résolution du conflit   Les options disponibles dans cette colonne sont les suivantes :

  • Consolidée   La première mise à jour est prioritaire. Les mises à jour téléchargées sont rejetées en cas de conflit.

  • Distant   La dernière mise à jour est prioritaire. Les mises à jour téléchargées sont toujours appliquées. N'utilisez cette option qu'avec la détection basée sur les colonnes. Sinon, désactivez la détection des conflits pour obtenir le même résultat avec de meilleures performances.

  • Estampille   La modification la plus récente, identifiée à l'aide d'une colonne timestamp que vous tenez à jour, est prioritaire. Cette colonne enregistre la date de dernière modification de la ligne. Elle doit figurer dans les tables distantes et consolidées et faire partie de la synchronisation. Pour que cela fonctionne, vos bases de données distantes et consolidées doivent utiliser le même fuseau horaire (UTC de préférence) et leurs horloges doivent être synchronisées.

  • Personnalisée   Vous pouvez écrire vos propres scripts resolve_conflict au lieu de les générer automatiquement. Pour cela, utilisez l'onglet Evénements.

Reportez-vous à la section Resolving conflicts.