sp_reinitpullsubscription (T-SQL)
Berlaku untuk: SQL Server Azure SQL Managed Instance
Menandai penarikan transaksional atau langganan anonim untuk reinisialisasi saat Agen Distribusi berjalan berikutnya. Prosedur tersimpan ini dijalankan di Pelanggan pada database langganan penarikan.
Sintaks
sp_reinitpullsubscription [ @publisher = ] 'publisher'
, [ @publisher_db = ] 'publisher_db'
, [ @publication = ] 'publication'
Argumen
[ @publisher = ] 'publisher'
Adalah nama Penerbit. publisher adalah sysname, tanpa default.
[ @publisher_db = ] 'publisher_db'
Adalah nama database Publisher. publisher_db adalah sysname, tanpa default.
[ @publication = ] 'publication'
Adalah nama publikasi. publikasi adalah sysname, dengan default semua, yang menandai semua langganan untuk reinitialisasi.
Mengembalikan Nilai Kode
0 (berhasil) atau 1 (kegagalan)
Keterangan
sp_reinitpullsubscription digunakan dalam replikasi transaksional.
sp_reinitpullsubscription tidak didukung untuk replikasi transaksional peer-to-peer.
sp_reinitpullsubscription dapat dipanggil dari Pelanggan untuk menginisialisasi ulang langganan, selama eksekusi Agen Distribusi berikutnya.
Langganan ke publikasi yang dibuat dengan nilai false untuk @immediate_sync tidak dapat diinisialisasi ulang dari Pelanggan.
Anda dapat menginisialisasi ulang langganan penarikan dengan menjalankan sp_reinitpullsubscription di Pelanggan atau sp_reinitsubscription di Penerbit.
Contoh
-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). For information about how to use scripting variables
-- on the command line and in SQL Server Management Studio, see the
-- "Executing Replication Scripts" section in the topic
-- "Programming Replication Using System Stored Procedures".
DECLARE @publicationDB AS sysname;
DECLARE @publication AS sysname;
SET @publicationDB = N'AdventureWorks2022';
SET @publication = N'AdvWorksProductTran';
USE [AdventureWorks2022Replica]
-- Execute at the Subscriber to reinitialize the pull subscription.
EXEC sp_reinitpullsubscription
@publisher = $(PubServer),
@publisher_db = @publicationDB,
@publication = @publication;
GO
-- Start the Distribution Agent.
Izin
Hanya anggota peran server tetap sysadmin atau peran database tetap db_owner yang dapat menjalankan sp_reinitpullsubscription.
Lihat Juga
Menginisialisasi ulang Langganan
Menginisialisasi ulang Langganan
Prosedur Tersimpan Sistem (Transact-SQL)