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

SQL Anywhere 11.0.1 (Français) » Aide contextuelle » Aide du mode Modèle du module de connexion MobiLink » Mode Modèle de MobiLink » Onglet Mappages

 

Mappages : Mappages de tables

Le volet Mappages de table contient une ligne pour chaque table distante. Une table distante est mappée si une base de données consolidée est sélectionnée et que le sens du mappage sélectionné est Bidirectionnel, Transférer vers table consolidée uniquement ou Transférer vers table distante uniquement.

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 distante   Il s'agit de la table distante que vous synchronisez dans la base de données distante. Le nom du propriétaire de la table distante est placé entre parenthèses.

Vous pouvez marquer une table distante pour la supprimer en cliquant avec le bouton droit de la souris sur la ligne dans le volet Mappages de tables et en sélectionnant Supprimer. La table distante sera alors supprimée lors de l'enregistrement du modèle. Le fait de supprimer une table distante signifie qu'elle ne sera pas créée lors du déploiement sur une nouvelle base de données. Pour plus d'informations, reportez-vous à la section Modifying how deletes are handled.

Vous pouvez ajouter une table distante à partir de la fenêtre Créer des tables distantes. Pour plus d'informations, reportez-vous à la section Modifying the remote database that your model creates.

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.

Si vous sélectionnez l'option Non synchronisé, la table demeure dans le schéma de la base de données distante. Lorsque le modèle est déployé, la table est créée dans la base de données distante, mais elle n'est pas synchronisée. Pour plus d'informations, reportez-vous à la section Modifying table and column mappings.

Si vous ne souhaitez pas que la table soit créée dans la base de données distante, supprimez-la du modèle. Pour plus d'informations, reportez-vous à la section Modifying how deletes are handled.

Colonne Table consolidée   Il s'agit de la table consolidée qui sera synchronisée avec la table distante correspondante. La synchronisation s'effectue entre ces tables et celles affichées dans la colonne Table distante. Pour changer de table consolidée, cliquez sur la colonne et sélectionnez celle de votre choix dans la liste des tables consolidées.

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

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. Avec ce type de transfert, les objets nécessaires sont automatiquement générés. Pour plus d'informations, 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 ont déjà été transférées. Pour plus d'informations, 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 du volet Détails.

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

  • Aucun   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.

  • 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 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.

Pour plus d'informations, 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.

Pour plus d'informations, reportez-vous à la section Resolving conflicts.