Partilhar via


Trabalhando com esquemas de tabela no banco de dados cliente

Dica

As informações a seguir foram incluídas como referência para aplicativos existentes que dão suporte apenas a cenários offline. Para desenvolver novos aplicativos, consulte Arquitetura e classes para sincronização de bancos de dados.

Este tópico descreve as diversas maneiras de trabalhar com os esquemas de tabelas criados em bancos de dados cliente.

Sincronização do cliente e do servidor

Durante a sessão de sincronização inicial de um cliente, o Sync Framework cria tabelas no banco de dados cliente. Para obter mais informações, consulte Como inicializar o banco de dados cliente e trabalhar com esquemas de tabela. Após a criação dessas tabelas, são permitidas algumas alterações de esquema.

O Sync Framework não propaga automaticamente as alterações de esquema do servidor para o cliente. Para obter informações sobre como manipular as alterações de esquema no servidor, consulte Implantando e controlando a versão de aplicativos. As seguintes alterações de esquema têm suporte no banco de dados cliente:

  • Descartar tabelas. O comportamento durante a próxima sincronização depende do valor especificado para CreationOption. Se você não quiser a tabela no cliente, remova-a de SyncTableCollection. Ao descartar uma tabela na qual o controle de alterações está habilitado, você também descartará a tabela do sistema que controla as operações de exclusão dessa tabela. Portanto, todas as operações de exclusão desde a última sincronização não são carregadas no servidor.

  • Adicionar novas colunas.

  • Descartar colunas de tabelas envolvidas na sincronização de instantâneo. Essa alteração não tem suporte em outros tipos de sincronização.

  • Adicionar, descartar e renomear índices.

  • Adicionar, descartar e renomear chaves primárias e outras restrições.

  • Modificar padrões.

Todas as outras alterações não têm suporte e podem causar falhas de sincronização.

Em alguns aplicativos, o esquema é diferente no cliente e no servidor. Os seguintes pontos resumem o comportamento de uma tabela e o conjunto de dados do ADO.NET que o Sync Framework usa para atualizar essa tabela no cliente:

  • Se o conjunto de dados contiver Coluna1 e Coluna2, e a tabela contiver Coluna1, Coluna2 e Coluna3: os valores da Coluna1 e da Coluna2 serão aplicados e a Coluna3 será definida como seu valor padrão ou NULL se ela não tiver um padrão.

  • Se o conjunto de dados contiver Coluna1, Coluna2 e Coluna3, e a tabela contiver Coluna1 e Coluna2: os valores da Coluna1 e da Coluna2 serão aplicados e a Coluna3 será ignorada.

  • Se o conjunto de dados contiver Coluna1, Coluna2 e Coluna3, e a tabela contiver Coluna1, Coluna2 e Coluna4: os valores da Coluna1 e da Coluna2 serão aplicados; a Coluna3 será definida como seu valor padrão ou NULL, se ela não tiver um padrão, e a Coluna4 será ignorada.