Compartilhar via


sp_repladdcolumn (Transact-SQL)

Adiciona uma coluna a um artigo de tabela existente que foi publicado. Permite que a nova coluna seja adicionada a todos os Publicadores que publicam essa tabela, ou simplesmente adiciona a coluna a uma publicação específica que publica a tabela. Esse procedimento armazenado é executado no Publicador, no banco de dados publicador.

Importante

Esse procedimento armazenado foi preterido e tem suporte para compatibilidade com versões anteriores.Só deve ser usado com Editores Microsoft SQL Server 2000 e Assinantes de republicação SQL Server 2000.Esse procedimento não deve ser usado em colunas com tipos de dados que foram apresentadas no SQL Server 2005 ou superior.

Ícone de vínculo de tópico Convenções da sintaxe Transact-SQL

Sintaxe

sp_repladdcolumn [ @source_object = ] 'source_object', [ @column = ] 'column' ]
    [ , [ @typetext = ] 'typetext' ]
    [ , [ @publication_to_add = ] 'publication_to_add' ]
    [ , [ @from_agent = ] from_agent ]
    [ , [ @schema_change_script = ] 'schema_change_script' ]
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]

Argumentos

  • [ @source\_object =] 'source_object'
    É o nome do artigo de tabela que contém a nova coluna a ser adicionada. source_object é nvarchar(358), sem padrão.

  • [ @column =] 'column'
    É o nome da coluna na tabela a ser adicionada para replicação. column é sysname, sem padrão.

  • [ @typetext =] 'typetext'
    É a definição da coluna que está sendo adicionada. typetext é nvarchar(3000), sem padrão. Por exemplo, se a coluna order_filled estiver sendo adicionada e for um campo de um único caractere, não NULL, e tiver um valor padrão N, order_filled será o parâmetro column, enquanto a definição da coluna, char(1) NOT NULL CONSTRAINT constraint_name DEFAULT 'N' será o valor de parâmetro typetext.

  • [ @publication\_to\_add =] 'publication_to_add'
    É o nome da publicação à qual a nova coluna é adicionada. publication_to_add é nvarchar(4000), com um padrão de ALL. Se for ALL, todas as publicações que contêm essa tabela serão afetadas. Se publication_to_add for especificado, somente esta publicação terá a nova coluna adicionada.

  • [ @from\_agent = ] from_agent
    Se o procedimento armazenado estiver sendo executado por um agente de replicação. from_agent é int, com um padrão 0, onde um valor de 1 é usado quando esse procedimento armazenado está sendo executado por um agente de replicação; em qualquer outro caso, o valor padrão 0 deve ser usado.

  • [ @schema\_change\_script =] 'schema_change_script'
    Especifica o nome e o caminho de um script do SQL Server usado para modificar os procedimentos armazenados personalizados gerados pelo sistema. schema_change_script é nvarchar(4000), com um padrão de NULL. A replicação permite procedimentos armazenados personalizados definidos pelo usuário, para substituir um ou mais dos procedimentos padrão usados em replicação transacional. schema_change_script é executado depois que uma alteração de esquema é feita em um artigo de tabela replicado usando sp_repladdcolumn e pode ser utilizado para executar uma destas operações:

    • Se os procedimentos armazenados personalizados forem gerados novamente automaticamente, schema_change_script pode ser usado para descartar esses procedimentos armazenados personalizados e substituí-los por procedimentos armazenados personalizados definidos pelo usuário, que oferecem suporte ao novo esquema.

    • Se os procedimentos armazenados personalizados não forem gerados novamente automaticamente, schema_change_script pode ser usado para gerar novamente esses procedimentos armazenados ou criar procedimentos armazenados personalizados definidos pelo usuário.

  • [ @force\_invalidate\_snapshot = ] force_invalidate_snapshot
    Habilita ou desabilita a capacidade de ter um instantâneo invalidado. force_invalidate_snapshot é um bit, com um padrão de 1.

    1 especifica que as alterações no artigo podem invalidar o instantâneo e, se esse for o caso, um valor de 1 dará permissão para que ocorra um novo instantâneo.

    0 especifica que as alterações no artigo não invalidam o instantâneo.

  • [ @force\_reinit\_subscription = ] force_reinit_subscription
    Habilita ou desabilita a capacidade de fazer com que a assinatura seja reinicializada. force_reinit_subscription é um bit com um padrão de 0.

    0 especifica que as alterações no artigo não fazem com que a assinatura seja reiniciada.

    1 especifica que as alterações no artigo podem fazer com que a assinatura seja reiniciada e, se esse for o caso, um valor de 1 dará permissão para que a reinicialização da assinatura ocorra.

Valores de código de retorno

0 (êxito) ou 1 (falha)

Permissões

Apenas membros da função de servidor fixa sysadmin e da função de banco de dados fixa db_owner podem executar sp_repladdcolumn.

Consulte também

Referência

Procedimentos armazenados do sistema (Transact-SQL)

Conceitos

Recursos preteridos em Replicação do Microsoft SQL Server