Compartilhar via


sp_changesubscription (Transact-SQL)

Aplica-se a: Instância Gerenciada de SQL do Azure do SQL Server

Altera as propriedades de uma assinatura push transacional ou de instantâneo ou uma assinatura pull envolvidas em uma replicação transacional de atualização em fila. Para alterar as propriedades de todos os outros tipos de assinaturas pull, use sp_change_subscription_properties (Transact-SQL). sp_changesubscription é executado no Publicador no banco de dados de publicação.

Importante

Quando um Publicador é configurado com um Distribuidor remoto, os valores fornecidos para todos os parâmetros, inclusive job_login e job_password, são enviados ao Distribuidor como texto sem-formatação. Você deve criptografar a conexão entre o Publicador e seu Distribuidor remoto antes de executar esse procedimento armazenado. Para obter mais informações, confira Habilitar conexões criptografadas para o mecanismo de banco de dados (SQL Server Configuration Manager).

Convenções de sintaxe de Transact-SQL

Sintaxe

  
sp_changesubscription [ @publication = ] 'publication'  
        , [ @article = ] 'article'  
        , [ @subscriber = ] 'subscriber'  
        , [ @destination_db = ] 'destination_db'  
        , [ @property = ] 'property'  
        , [ @value = ] 'value'  
    [ , [ @publisher = ] 'publisher' ]  

Argumentos

[ @publication = ] 'publication' É o nome da publicação a ser alterada. publicationé sysname, sem padrão

[ @article = ] 'article' É o nome do artigo a ser alterado. article é sysname, sem padrão.

[ @subscriber = ] 'subscriber' É o nome do Assinante. subscriber é sysname, sem padrão.

[ @destination_db = ] 'destination_db' É o nome do banco de dados de assinatura. destination_db é sysname, sem padrão.

[ @property = ] 'property' É a propriedade a ser alterada para a assinatura fornecida. é nvarchar(30) e pode ser um dos valores na tabela.

[ @value = ] 'value'É o novo valor da propriedade especificada. value é nvarchar(4000) e pode ser um dos valores na tabela.

Propriedade Valor Descrição
distrib_job_login Faça login na conta do Microsoft Windows na qual o agente é executado.
distrib_job_password Senha para a conta do Windows na qual o agente é executado.
subscriber_catalog Catálogo a ser usado ao fazer uma conexão com o provedor OLE DB. Essa propriedade só é válida para assinantes que não são do Microsoft SQL Server.
subscriber_datasource Nome da fonte de dados conforme entendido pelo provedor OLE DB. Essa propriedade só é válida para Assinantes não-SQL Server .
subscriber_location Local do banco de dados conforme entendido pelo provedor OLE DB. Essa propriedade só é válida para Assinantes não-SQL Server .
subscriber_login Nome de logon no Assinante.
subscriber_password Senha forte para o logon fornecido.
subscriber_security_mode 1 Use a Autenticação do Windows ao se conectar ao Assinante.
0 Use a Autenticação do SQL Server ao se conectar ao Assinante.
subscriber_provider PROGID (identificador programático) exclusivo com o qual o provedor OLE DB para fonte de dados não SQL Server é registrado. Essa propriedade só é válida para Assinantes não-SQL Server .
subscriber_providerstring Cadeia de conexão específica de provedor OLE DB que identifica a fonte de dados. Essa propriedade só é válida para Assinantes não-SQL Server .
subscriptionstreams É o número de conexões permitido por Agente de Distribuição para aplicar lotes de alterações em paralelo a um Assinante. Há suporte para um intervalo de valores de 1 a 64 para Publicadores do SQL Server. Essa propriedade deve ser 0 para Assinantes não-SQL Server, Publicadores Oracle ou assinaturas ponto a ponto.
subscriber_type 1 Servidor de fontes de dados ODBC
3 Provedor OLE DB
memory_optimized bit Indica que a assinatura dá suporte a tabelas com otimização de memória. memory_optimized é bit, em que 1 é igual a true (a assinatura dá suporte a tabelas com otimização de memória).

[ @publisher = ] 'publisher' Especifica um Publicador não SQL Server. publisher é sysname, com um padrão de NULL.

Observação

publisher não deve ser especificado para um Publicador do SQL Server.

Valores do código de retorno

0 (sucesso) ou 1 (falha)

Comentários

sp_changesubscription é usado na replicação de instantâneo e transacional.

sp_changesubscription só pode ser usado para modificar as propriedades de assinaturas push ou assinaturas pull envolvidas na replicação transacional de atualização enfileirada. Para alterar as propriedades de todos os outros tipos de assinaturas pull, use sp_change_subscription_properties (Transact-SQL).

Depois de alterar o logon ou a senha de um agente, você deve parar e reiniciar o agente antes que as alterações entrem em vigor.

Permissões

Somente membros da função de servidor fixa sysadmin ou db_owner função de banco de dados fixa podem executar sp_changesubscription.

Confira também

sp_addsubscription (Transact-SQL)
sp_dropsubscription (Transact-SQL)