Criando a publicação
Você cria publicações do SQL Server Compact 3.5 usando as ferramentas e técnicas de replicação padrão do SQL Server. A maneira mais fácil de criar uma publicação é usando o Assistente de Publicação. Você também pode criar a publicação usando o procedimento armazenado sp_addmergepublication.
Usando o Assistente de Publicação para criar uma publicação
A maneira mais fácil de criar uma publicação é usar o Assistente de Publicação no SQL Server. O assistente fornece uma interface gráfica de usuário que permite que você selecione o Editor, o tipo de publicação e os artigos que serão publicados. Ele também permite que você configure filtros para a publicação.
Quando você cria uma publicação para Assinantes do SQL Server Compact 3.5 usando o Assistente de Publicação, deve selecionar as seguintes opções:
Na página Tipo de Publicação, selecione Mesclar Publicação.
Habilitar assinantes do Windows CE:
- No SQL Server 2005 e em versões posteriores, na página Tipo de Assinante, selecione SQL Server 2005 Mobile, SQL Server Compact 3.1 e posterior.
Habilitando Assinantes, os instantâneos do modo de caractere são automaticamente configurados para a publicação. No SQL Server 2005 e em versões posteriores, a sincronização da Web também é habilitada.
Se esta for a primeira publicação criada para este servidor, o Assistente de Publicação solicitará que você configure o local da pasta de instantâneos padrão. A pasta de instantâneos mantém os arquivos de instantâneo que contêm o esquema e os dados das tabelas publicadas. O usuário do IIS deve poder ler esses arquivos de instantâneo para que eles possam ser baixados para o dispositivo inteligente.
Observação
O local padrão da pasta de instantâneos é um caminho local na pasta de instalação do SQL Server. Você deve alterar esse caminho para uma pasta compartilhada para que o usuário do IIS possa acessar o instantâneo da rede. Para obter mais informações sobre como criar e configurar a pasta de instantâneos, consulte Configurando a pasta de instantâneo.
Para obter mais informações sobre como usar o Assistente de Publicação, consulte "Assistentes de Replicação" no Manual Online do SQL Server.
Usando sp_addmergepublication para criar uma publicação
Você também pode criar uma nova publicação usando o procedimento armazenado sp_addmergepublication. Se você usar o procedimento armazenado, determinados argumentos deverão ter valores específicos para permitir assinantes do banco de dados compacto. A tabela a seguir lista os argumentos e seus valores obrigatórios.
Argumento |
Valor obrigatório |
Versões do SQL Server |
---|---|---|
@sync_mode |
'character' |
SQL Server 2005 ou versões posteriores |
@allow_pull |
true |
SQL Server 2005 ou versões posteriores |
@allow_anonymous |
true |
SQL Server 2005 ou versões posteriores |
@centralized_conflicts |
true |
SQL Server 2005 ou versões posteriores |
@compress_snapshot |
false |
SQL Server 2005 ou versões posteriores |
@allow_web_synchronization |
true |
SQL Server 2005 ou versões posteriores |
@conflict_logging |
both ou Publisher |
SQL Server 2005 ou versões posteriores |
@keep_partition_changes |
true |
SQL Server 2005 ou versões posteriores |
Além dos argumentos obrigatórios na tabela anterior, as seguintes regras se aplicam aos argumentos adicionais que você pode usar com o procedimento armazenado sp_addmergepublication:
@alt\_snapshot\_folder só tem suporte quando @snapshot\_in\_defaultfolder é definido como 'false'.
@pre-snapshot\_script é ignorado pelos assinantes.
@post\_snapshot\_script é ignorado pelos assinantes.
@keep\_partition\_changes é um parâmetro substituído no SQL Server e não deve ser usado. Em vez disso, defina @use\_partition\_groups como 'true' para melhorar o desempenho da sincronização com artigos filtrados.
@allow\_synctoalternate é ignorado pelos assinantes.
Observação
Quando @partition_options é definido como 1,2 ou 3, o SQL Server Compact 3.5 não pode auxiliar na proteção contra inserções fora da partição. Dessa forma, durante a sincronização, elas são ignoradas pelo Editor, mas não são registradas como um conflito ou excluídas do Editor, causando assim divergências. O desenvolvedor deve se proteger de inserções fora da partição na camada de aplicativo.