Partager via


Limitations RDA

Dans Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition), RDA (Remote Data Access) a des limitations dans les domaines suivants :

  • Respect de la casse. Les bases de données SQL Server Compact Edition ne respectent pas la casse.
  • ROWGUID. Quand vous utilisez RDA pour extraire des données d'une table dans SQL Server qui participe aussi à la réplication sur le serveur, vous devez exclure la colonne système avec l'attribut ROWGUIDCOL. Par défaut, le nom de cette colonne est RowGuid.
    Par exemple, pour le paramètre SQLSelectString de la méthode Pull, utilisez SELECT CompanyName, ContactName FROM Customers au lieu de SELECT * FROM Customers.
  • Déclencheurs. SQL Server Compact Edition ne prend pas en charge les déclencheurs. Cependant, les déclencheurs peuvent se trouver sur la table SQL Server à partir de laquelle RDA extrait des données. Pour les tables suivies, les déclencheurs SQL Server peuvent être exécutés quand des modifications sont renvoyées à SQL Server. Il peut être nécessaire de spécifier SET NOCOUNT ON dans la logique du déclencheur. Cela indique de ne pas renvoyer le nombre de lignes affectées, car une réponse indiquant qu'aucune ligne n'est affectée provoque une erreur pour la méthode Push RDA.
  • Tables et colonnes. Pour les tables suivies, le nombre de colonnes disponibles est de 1 017 (1 024 moins sept colonnes système). Ces sept colonnes système sont protégées et utilisées pour les tables RDA suivies.
  • Colonnes calculées. La méthode Pull échoue si le jeu d'enregistrements contient des colonnes calculées.
  • Colonnes d'identité. Si vous utilisez des colonnes IDENTITY pour générer l'unicité, notez que RDA ne gère pas dynamiquement les colonnes IDENTITY. Les valeurs de départ par défaut pour une colonne IDENTITY sur l'appareil sont toujours : valeur de départ=1, incrément=1. SQL Server Compact Edition vous permet de modifier les valeurs d'identité SEED et d'identité INCREMENT dans la table de base de données locale au moyen de l'instruction ALTER TABLE. Cela vous permet de gérer manuellement la plage d'identité pour chaque appareil. Vous devez déterminer la valeur IDENTITY la plus élevée et ajuster la valeur de départ avant de procéder à toute insertion dans la table. Par exemple, si la valeur IDENTITY la plus élevée doit être 99, utilisez ALTER TABLE Orders ALTER COLUMN OrderId IDENTITY (100,1) pour redéfinir la valeur IDENTITY suivante à 100.

Limitations de schéma

SQL Server Compact Edition peut effectuer le suivi des modifications apportées à la table SQL Server Compact Edition résultante. En spécifiant l'option de suivi appropriée, SQL Server Compact Edition effectue le suivi de toutes les insertions, mises à jour et suppressions effectuées sur la table SQL Server Compact Edition locale. L'application peut ensuite appeler la méthode Push pour propager ces modifications vers la table SQL Server d'origine.

Les méthodes Pull et Push suivies par RDA utilisent un contrôle d'accès concurrentiel optimiste. SQL Server ne conserve pas les enregistrements extraits verrouillés. Lorsque l'application appelle la méthode Push, les modifications apportées à la base de données SQL Server Compact Edition locale sont appliquées sans conditions à la base de données SQL Server. Cela peut provoquer la perte des modifications effectuées par d'autres utilisateurs de la base de données SQL Server.

Utilisez les méthodes Pull et Push suivies quand les enregistrements que vous mettez à jour sont partitionnés et que les conflits sont peu probables. Par exemple, les méthodes Pull et Push suivies peuvent être utilisées dans une application effectuant le suivi de chaque technicien qui a une liste unique d'appels de service.

Vous pouvez effectuer les modifications de schéma suivantes sur une table SQL Server Compact Edition créée à l'aide d'une méthode Pull suivie :

  • Modifier la valeur de départ ou l'incrément de la colonne d'identité.
  • Ajouter ou supprimer des contraintes DEFAULT.
  • Ajouter ou supprimer des clés étrangères.
  • Ajouter ou supprimer des index.
  • Supprimer la table.

Vous ne pouvez effectuer aucune des modifications de schéma suivantes sur une table SQL Server pendant qu'une méthode Pull suivie est en cours d'exécution :

  • Ajouter, supprimer ou renommer des colonnes.
  • Renommer la table.
  • Supprimer une clé primaire.
  • Modifier une définition de type de données.

Pour effectuer ces modifications de schéma sur une table SQL Server, vous devez supprimer la table SQL Server Compact Edition et réextraire la table SQL Server modifiée.

Voir aussi

Aide et information

Assistance sur SQL Server Compact Edition