Compartilhar via


Especificar tipos de artigo (Programação Transact-SQL de replicação)

Os tipos de artigo padrão para replicação são artigos da tabela, mas é possível publicar outros objetos de banco de dados como artigos, inclusive exibições, procedimentos armazenados, funções definidas pelo usuário e execução de procedimento armazenado. Você pode usar procedimentos armazenados de replicação para especificar um tipo de artigo programaticamente quando definir um artigo. Os procedimentos usados dependerão do tipo de replicação e do tipo de artigo.

ObservaçãoObservação

A designação somente esquema, ao definir tabela, exibição e artigos de procedimento armazenado, indica que apenas a definição de objeto é replicada.

Para publicar um artigo de tabela em uma publicação transacional ou de instantâneo

  1. No Publicador do banco de dados de publicação, execute sp_addarticle. Especifique um dos seguintes valores para @type para definir o tipo de artigo:

    • logbased - um artigo de tabela baseado em log que é o padrão para replicação transacional e de instantâneo. A replicação gera automaticamente o procedimento armazenado usado para filtragem horizontal e a exibição que define um artigo filtrado verticalmente.

    • logbased manualfilter - um artigo filtrado horizontalmente, baseado em log, em que o procedimento armazenado usado para filtragem horizontal é criado manualmente, definido pelo usuário e especificado para @filter. Para obter mais informações, consulte Definir e modificar um filtro de linha estático.

    • logbased manualview - um artigo filtrado verticalmente, baseado em log, em que a exibição que define o artigo filtrado verticalmente é criada e definida pelo usuário e especificada para @sync_object. Para obter mais informações, consulte Definir e modificar um filtro de linha estático e Definir e modificar um filtro de colunas.

    • logbased manualboth - um artigo filtrado horizontal e verticalmente, baseado em log, em que tanto o procedimento armazenado usado para filtragem horizontal quanto a exibição que define o artigo filtrado verticalmente são criados e definidos pelo usuário e especificados respectivamente para @filter e @sync_object. Para obter mais informações, consulte Definir e modificar um filtro de linha estático e Definir e modificar um filtro de colunas.

    Isso define um novo artigo para a publicação. Para obter mais informações, consulte Defina um Artigo.

  2. Para artigos logbased manualboth e logbased manualfilter, execute sp_articlefilter para gerar o procedimento armazenado de filtragem para um artigo filtrado horizontalmente. Para obter mais informações, consulte Definir e modificar um filtro de linha estático.

  3. Para artigos logbased manualboth, logbased manualview e logbased manualfilter, execute sp_articleview para gerar a exibição que define o artigo filtrado verticalmente. Para obter mais informações, consulte Definir e modificar um filtro de colunas.

Para publicar uma exibição ou artigo de exibição indexada em uma publicação transacional ou de instantâneo

  1. No Publicador do banco de dados de publicação, execute sp_addarticle. Especifique um dos seguintes valores para @type para definir o tipo de artigo:

    • indexed view logbased - um artigo de exibição indexada baseado em log. A replicação gera automaticamente o procedimento armazenado usado para filtragem horizontal e a exibição que define um artigo filtrado verticalmente.

    • view schema only - um artigo de exibição somente de esquema. A tabela base também deve ser replicada.

    • indexed view schema only - um artigo de exibição indexada somente de esquema. A tabela base também deve ser replicada.

    • indexed view logbased manualfilter - um artigo de exibição indexada, filtrado horizontalmente, baseado em log, em que o procedimento armazenado usado para filtragem horizontal é criado manualmente, definido pelo usuário e especificado para @filter. Para obter mais informações, consulte Definir e modificar um filtro de linha estático.

    • indexed view logbased manualview - um artigo de exibição indexada, filtrado, baseado em log, em que a exibição que define um artigo filtrado verticalmente é criada e definida pelo usuário e especificada para @sync_object. Para obter mais informações, consulte Definir e modificar um filtro de linha estático e Definir e modificar um filtro de colunas.

    • indexed view logbased manualboth - um artigo de exibição indexada, filtrado, baseado em log, em que tanto o procedimento armazenado usado para filtragem horizontal quanto a exibição que define um artigo filtrado verticalmente são criados e definidos pelo usuário e especificados respectivamente para @filter e @sync_object. Para obter mais informações, consulte Definir e modificar um filtro de linha estático e Definir e modificar um filtro de colunas.

    Isso define um novo artigo para a publicação. Para obter mais informações, consulte Defina um Artigo.

  2. Para artigos logbased manualboth e logbased manualfilter, execute sp_articlefilter para gerar o procedimento armazenado de filtragem para um artigo filtrado horizontalmente. Para obter mais informações, consulte Definir e modificar um filtro de linha estático.

  3. Para artigos logbased manualboth, logbased manualview e logbased manualfilter, execute sp_articleview para gerar a exibição que define o artigo filtrado verticalmente. Para obter mais informações, consulte Definir e modificar um filtro de colunas.

Para publicar um procedimento armazenado, execução de procedimento armazenado ou artigo de função definida pelo usuário em uma publicação transacional ou de instantâneo

Para publicar um artigo de tabela ou de exibição em uma publicação de mesclagem

  • No Publicador do banco de dados de publicação, execute o sp_addmergearticle. Especifique um dos seguintes valores para @type para definir o tipo de artigo:

    • table - um artigo de tabela.

    • indexed view schema only - um artigo de exibição indexada somente de esquema.

    • view schema only - um artigo de exibição somente de esquema.

    Isso define um novo artigo para a publicação. Para obter mais informações, consulte Defina um Artigo.

Para publicar um procedimento armazenado ou artigo de função definida pelo usuário em uma publicação de mesclagem

  • No Publicador do banco de dados de publicação, execute o sp_addmergearticle. Especifique um dos seguintes valores para @type para definir o tipo de artigo:

    • func schema only - um artigo de função definida pelo usuário e somente de esquema.

    • proc schema only - um artigo de procedimento armazenado de somente esquema.

    Isso define um novo artigo para a publicação. Para obter mais informações, consulte Defina um Artigo.

Consulte também

Conceitos

Conceitos dos procedimentos armazenados do sistema de replicação

Publicar dados e objetos de banco de dados