Como definir e modificar um filtro de linha com parâmetros para um artigo de mesclagem (SQL Server Management Studio)

Defina, modifique e exclua filtros de linha com parâmetros na página Filtrar Linhas da Tabela no Assistente para Nova Publicação na página Filtrar Linhas da caixa de diálogo Propriedades da Publicação – <Publicação>. Para obter mais informações sobre como usar o assistente e acessar a caixa de diálogo, consulte Como criar uma publicação e definir artigos (SQL Server Management Studio) e Como exibir e modificar propriedades de Artigo e Publicação (SQL Server Management Studio).

ObservaçãoObservação

Se você adicionar, modificar ou excluir um filtro de linha com parâmetros na caixa de diálogo Propriedades da Publicação – <Publicação> depois que assinaturas à publicação forem inicializadas, será preciso gerar um novo instantâneo e reinicializar todas as assinaturas após fazer a alteração. Para obter mais informações sobre os requisitos para alterações de propriedades, consulte Alterando a publicação e as propriedades do artigo.

Para definir um filtro de linha com parâmetros

  1. Na página Filtrar Linhas da Tabela do Assistente para Nova Publicação na página Filtrar Linhas de Propriedades da Publicação - <Publicação> , clique em Adicionar e depois em Adicionar Filtro.

  2. Na caixa de diálogo Adicionar Filtro, selecione uma tabela para filtrar na caixa de listagem suspensa.

  3. Crie uma instrução de filtro na caixa de texto Instrução de filtro. Você pode digitar diretamente na área de texto e também pode arrastar e soltar colunas da caixa de listagem Colunas.

    • A área de texto Instrução de filtro inclui o texto padrão que está no formato de:

      SELECT <published_columns> FROM [tableowner].[tablename] WHERE
      
    • O texto padrão não pode ser alterado; digite a cláusula de filtro depois da palavra-chave WHERE usando sintaxe padrão do SQL. Um filtro com parâmetros inclui uma chamada para a função de sistema HOST_NAME() e/ou SUSER_SNAME(), ou uma função definida pelo usuário que referencie uma ou ambas as funções. A seguir há um exemplo de uma cláusula de filtro completa para um filtro de linha com parâmetros:

      SELECT <published_columns> FROM [HumanResources].[Employee] WHERE LoginID = SUSER_SNAME()
      

      A cláusula WHERE deve usar nomeação de duas partes; nomeação de três partes e nomeação de quatro partes não possuem suporte.

      Observação importanteImportante

      Por motivos de desempenho, recomendamos que não sejam aplicadas funções a nomes de colunas em cláusulas de filtro de linha com parâmetros, como LEFT([MyColumn]) = SUSER_SNAME(). Se você usar HOST_NAME em uma cláusula de filtro e substituir o valor HOST_NAME, pode ser necessário converter tipos de dados usando CONVERT. Para obter mais informações sobre práticas recomendadas para esse caso, consulte a seção "Substituindo o valor HOST_NAME()" no tópico Filtro de linha com parâmetros.

  4. Selecione a opção que corresponde ao modo em que os dados serão compartilhados entre Assinantes:

    • Uma linha desta tabela irá para múltiplas assinaturas

    • Uma linha dessa tabela irá para apenas uma assinatura

    Se você selecionar Uma linha dessa tabela irá para apenas uma assinatura, a replicação de mesclagem poderá otimizar o desempenho, armazenando e processando menos metadados. No entanto, será necessário certificar-se de que os dados são particionados de forma que uma linha não seja replicada em mais de um Assinante. Para obter mais informações, consulte a seção "Configurando opções de partição" no tópico Filtro de linha com parâmetros.

  5. Clique em OK.

  6. Se você estiver na caixa de diálogo Propriedades da Publicação - <Publicação>, clique em OK para salvar e feche a caixa de diálogo.

Para modificar um filtro de linha com parâmetros

  1. Na página Filtrar Linhas da Tabela do Assistente para Novas Publicações ou na página Filtrar Linhas da caixa de diálogo Propriedades de Publicação – <Publicação>, selecione um filtro no painel Tabelas Filtradas e, então, clique em Editar.

  2. Na caixa de diálogo Editar Filtro, modifique o filtro.

  3. Clique em OK.

Para excluir um filtro de linha com parâmetros

  • Na página Filtrar Linhas da Tabela do Assistente para Nova Publicação, ou na página Filtrar Linhas de Propriedades da Publicação – <Publicação>, selecione um filtro no painel Tabelas Filtradas e, depois, clique em Excluir.