sp_changesubstatus (T-SQL)
Berlaku untuk:SQL ServerAzure SQL Managed Instance
Mengubah status Pelanggan yang ada. Prosedur tersimpan ini dijalankan di Publisher pada database publikasi.
Sintaks
sp_changesubstatus [ [ @publication = ] 'publication' ]
[ , [ @article = ] 'article' ]
[ , [ @subscriber = ] 'subscriber' ]
, [ @status = ] 'status'
[ , [ @previous_status = ] 'previous_status' ]
[ , [ @destination_db = ] 'destination_db' ]
[ , [ @frequency_type = ] frequency_type ]
[ , [ @frequency_interval = ] frequency_interval ]
[ , [ @frequency_relative_interval = ] frequency_relative_interval ]
[ , [ @frequency_recurrence_factor = ] frequency_recurrence_factor ]
[ , [ @frequency_subday = ] frequency_subday ]
[ , [ @frequency_subday_interval = ] frequency_subday_interval ]
[ , [ @active_start_time_of_day = ] active_start_time_of_day ]
[ , [ @active_end_time_of_day = ] active_end_time_of_day ]
[ , [ @active_start_date = ] active_start_date ]
[ , [ @active_end_date = ] active_end_date ]
[ , [ @optional_command_line = ] 'optional_command_line' ]
[ , [ @distribution_jobid = ] distribution_jobid ]
[ , [ @from_auto_sync = ] from_auto_sync ]
[ , [ @ignore_distributor = ] ignore_distributor ]
[ , [ @offloadagent= ] remote_agent_activation ]
[ , [ @offloadserver= ] 'remote_agent_server_name' ]
[ , [ @dts_package_name= ] 'dts_package_name' ]
[ , [ @dts_package_password= ] 'dts_package_password' ]
[ , [ @dts_package_location= ] dts_package_location ]
[ , [ @skipobjectactivation = ] skipobjectactivation
[ , [ @distribution_job_name= ] 'distribution_job_name' ]
[ , [ @publisher = ] 'publisher' ]
Argumen
[ @publication = ] 'publication'
Adalah nama publikasi. publikasi adalah sysname, dengan default %. Jika publikasi tidak ditentukan, semua publikasi terpengaruh.
[ @article = ] 'article'
Adalah nama artikel. Ini harus unik untuk publikasi. artikel adalah sysname, dengan default %. Jika artikel tidak ditentukan, semua artikel akan terpengaruh.
[ @subscriber = ] 'subscriber'
Adalah nama Pelanggan untuk mengubah status. pelanggan adalah sysname, dengan default %. Jika pelanggan tidak ditentukan, status diubah untuk semua Pelanggan ke artikel yang ditentukan.
[ @status = ] 'status'
Adalah status langganan dalam tabel syssubscriptions . status adalah sysname, tanpa default, dan dapat menjadi salah satu nilai ini.
Nilai | Deskripsi |
---|---|
active | Pelanggan disinkronkan dan menerima data. |
Aktif | Entri pelanggan ada tanpa langganan. |
Berlangganan | Pelanggan meminta data, tetapi belum disinkronkan. |
[ @previous_status = ] 'previous_status'
Adalah status sebelumnya untuk langganan. previous_status adalah sysname, dengan default NULL. Parameter ini memungkinkan Anda mengubah langganan apa pun yang saat ini memiliki status tersebut, sehingga memungkinkan fungsi grup pada sekumpulan langganan tertentu (misalnya, mengatur semua langganan aktif kembali ke langganan).
[ @destination_db = ] 'destination_db'
Adalah nama database tujuan. destination_db adalah sysname, dengan default %.
[ @frequency_type = ] frequency_type
Adalah frekuensi untuk menjadwalkan tugas distribusi. frequency_type int, dengan default NULL.
[ @frequency_interval = ] frequency_interval
Adalah nilai yang akan diterapkan ke frekuensi yang ditetapkan oleh frequency_type. frequency_interval int, dengan default NULL.
[ @frequency_relative_interval = ] frequency_relative_interval
Adalah tanggal tugas distribusi. Parameter ini digunakan ketika frequency_type diatur ke 32 (relatif bulanan). frequency_relative_interval int, dan bisa menjadi salah satu nilai ini.
Nilai | Description |
---|---|
1 | First |
2 | Second |
4 | Ketiga |
8 | Keempat |
16 | Last |
NULL (default) |
[ @frequency_recurrence_factor = ] frequency_recurrence_factor
Adalah faktor pengulangan yang digunakan oleh frequency_type. frequency_recurrence_factor int, dengan default NULL.
[ @frequency_subday = ] frequency_subday
Apakah seberapa sering, dalam hitungan menit, untuk menjadwalkan ulang selama periode yang ditentukan. frequency_subday int, dan bisa menjadi salah satu nilai ini.
Nilai | Description |
---|---|
1 | Satu kali |
2 | Second |
4 | Minute |
8 | Hour |
NULL (default) |
[ @frequency_subday_interval = ] frequency_subday_interval
Adalah interval untuk frequency_subday. frequency_subday_interval int, dengan default NULL.
[ @active_start_time_of_day = ] active_start_time_of_day
Adalah waktu hari ketika tugas distribusi pertama kali dijadwalkan, diformat sebagai HHmmss
. active_start_time_of_day int, dengan default NULL.
[ @active_end_time_of_day = ] active_end_time_of_day
Adalah waktu hari ketika tugas distribusi berhenti dijadwalkan, diformat sebagai HHmmss
. active_end_time_of_day int, dengan default NULL.
[ @active_start_date = ] active_start_date
Adalah tanggal ketika tugas distribusi pertama kali dijadwalkan, diformat sebagai yyyyMMdd
. active_start_date int, dengan default NULL.
[ @active_end_date = ] active_end_date
Adalah tanggal ketika tugas distribusi berhenti dijadwalkan, diformat sebagai yyyyMMdd
. active_end_date int, dengan default NULL.
[ @optional_command_line = ] 'optional_command_line'
Adalah prompt perintah opsional. optional_command_line adalah nvarchar(4000), dengan default NULL.
[ @distribution_jobid = ] distribution_jobid
Adalah ID pekerjaan Agen Distribusi di Distributor untuk langganan saat mengubah status langganan dari tidak aktif menjadi aktif. Dalam kasus lain, itu tidak didefinisikan. Jika lebih dari satu Agen Distribusi terlibat dalam satu panggilan ke prosedur tersimpan ini, hasilnya tidak ditentukan. distribution_jobid adalah biner(16), dengan default NULL.
[ @from_auto_sync = ] from_auto_sync
Diidentifikasi hanya untuk tujuan informasi. Tidak didukung. Kompatibilitas di masa mendatang tidak dijamin.
[ @ignore_distributor = ] ignore_distributor
Diidentifikasi hanya untuk tujuan informasi. Tidak didukung. Kompatibilitas di masa mendatang tidak dijamin.
[ @offloadagent = ] remote_agent_activation
Catatan
Aktivasi agen jarak jauh tidak digunakan lagi dan tidak lagi didukung. Parameter ini hanya didukung untuk mempertahankan kompatibilitas skrip mundur. Mengatur remote_agent_activation ke nilai selain 0 menghasilkan kesalahan.
[ @offloadserver = ] 'remote_agent_server_name'
Catatan
Aktivasi agen jarak jauh tidak digunakan lagi dan tidak lagi didukung. Parameter ini hanya didukung untuk mempertahankan kompatibilitas skrip mundur. Mengatur remote_agent_server_name ke nilai non-NULL menghasilkan kesalahan.
[ @dts_package_name = ] 'dts_package_name'
Menentukan nama paket Data Transformation Services (DTS). dts_package_name adalah sysname, dengan default NULL. Misalnya, untuk paket bernama DTSPub_Package Anda akan menentukan @dts_package_name = N'DTSPub_Package'
.
[ @dts_package_password = ] 'dts_package_password'
Menentukan kata sandi pada paket. dts_package_password adalah sysname dengan default NULL, yang menentukan bahwa properti kata sandi akan dibiarkan tidak berubah.
Catatan
Paket DTS harus memiliki kata sandi.
[ @dts_package_location = ] dts_package_location
Menentukan lokasi paket. dts_package_location adalah int, dengan default 0. Jika 0, lokasi paket berada di Distributor. Jika 1, lokasi paket berada di Pelanggan. Lokasi paket dapat berupa distributor atau pelanggan.
[ @skipobjectactivation = ] skipobjectactivation
Diidentifikasi hanya untuk tujuan informasi. Tidak didukung. Kompatibilitas di masa mendatang tidak dijamin.
[ @distribution_job_name = ] 'distribution_job_name'
Adalah nama pekerjaan distribusi. distribution_job_name adalah sysname, dengan default NULL.
[ @publisher = ] 'publisher'
Menentukan Penerbit SQL Server non-Microsoft. publisher adalah sysname, dengan default NULL.
Catatan
publisher tidak boleh digunakan saat mengubah properti artikel pada Penerbit SQL Server.
Mengembalikan Nilai Kode
0 (berhasil) atau 1 (kegagalan)
Keterangan
sp_changesubstatus digunakan dalam replikasi rekam jepret dan replikasi transaksional.
sp_changesubstatus mengubah status Pelanggan dalam tabel syssubscriptions dengan status yang diubah. Jika diperlukan, ini memperbarui status artikel dalam tabel sysarticles untuk menunjukkan aktif atau tidak aktif. Jika diperlukan, ini mengatur bendera replikasi aktif atau nonaktif dalam tabel sysobjects untuk tabel yang direplikasi.
Izin
Hanya anggota peran server tetap sysadmin , peran database tetap db_owner , atau pembuat langganan yang dapat menjalankan sp_changesubstatus.
Lihat Juga
sp_addsubscription (T-SQL)
sp_dropsubscription (T-SQL)
sp_helpdistributor (T-SQL)
sp_helpsubscription (T-SQL)
Prosedur Tersimpan Sistem (Transact-SQL)
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk