Bagikan melalui


Menghapus Artikel

Berlaku untuk:SQL ServerAzure SQL Managed Instance

Topik ini menjelaskan cara menghapus artikel di SQL Server dengan menggunakan Transact-SQL atau Objek Manajemen Replikasi (RMO). Untuk informasi tentang kondisi di mana artikel dapat dihilangkan dan apakah menjatuhkan artikel memerlukan rekam jepret baru atau reinisialisasi langganan, lihat Menambahkan Artikel ke dan Menghilangkan Artikel dari Publikasi yang Ada.

Dalam Topik Ini

Menggunakan T-SQL

Artikel dapat dihapus secara terprogram menggunakan prosedur tersimpan replikasi. Prosedur tersimpan yang Anda gunakan bergantung pada jenis publikasi tempat artikel berada.

Untuk menghapus artikel dari rekam jepret atau publikasi transaksi

  1. Jalankan sp_droparticle (Transact-SQL) untuk menghapus artikel, yang ditentukan oleh @article, dari publikasi, yang ditentukan oleh @publication. Tentukan nilai 1 untuk @force_invalidate_snapshot.

  2. (Opsional) Untuk menghapus objek yang diterbitkan dari database sepenuhnya, jalankan DROP <objectname> perintah di Publisher pada database publikasi.

Untuk menghapus artikel dari publikasi gabungan

  1. Jalankan sp_dropmergearticle (Transact-SQL) untuk menghapus artikel, yang ditentukan oleh @article, dari publikasi, yang ditentukan oleh @publication. Jika perlu, tentukan nilai 1 untuk @force_invalidate_snapshot dan nilai 1 untuk @force_reinit_subscription.

  2. (Opsional) Untuk menghapus objek yang diterbitkan dari database sepenuhnya, jalankan DROP <objectname> perintah di Publisher pada database publikasi.

Contoh (Transact-SQL)

Contoh berikut menghapus artikel dari publikasi transaksi. Karena perubahan ini membatalkan rekam jepret yang ada, nilai 1 ditentukan untuk parameter @force_invalidate_snapshot.

DECLARE @publication AS sysname;  
DECLARE @article AS sysname;  
SET @publication = N'AdvWorksProductTran';   
SET @article = N'Product';   
  
-- Drop the transactional article.  
USE [AdventureWorks]  
EXEC sp_droparticle   
  @publication = @publication,   
  @article = @article,  
  @force_invalidate_snapshot = 1;  
GO  

Contoh berikut menghapus dua artikel dari publikasi gabungan. Karena perubahan ini membatalkan rekam jepret yang ada, nilai 1 ditentukan untuk parameter @force_invalidate_snapshot.

DECLARE @publication AS sysname;  
DECLARE @article1 AS sysname;  
DECLARE @article2 AS sysname;  
SET @publication = N'AdvWorksSalesOrdersMerge';  
SET @article1 = N'SalesOrderDetail';   
SET @article2 = N'SalesOrderHeader';   
  
-- Remove articles from a merge publication.  
USE [AdventureWorks]  
EXEC sp_dropmergearticle   
  @publication = @publication,   
  @article = @article1,  
  @force_invalidate_snapshot = 1;  
EXEC sp_dropmergearticle   
  @publication = @publication,   
  @article = @article2,  
  @force_invalidate_snapshot = 1;  
GO  

Menggunakan Objek Manajemen Replikasi (RMO)

Anda dapat menghapus artikel secara terprogram dengan menggunakan Objek Manajemen Replikasi (RMO). Kelas RMO yang Anda gunakan untuk menghapus artikel bergantung pada jenis publikasi tempat artikel berada.

Untuk menghapus artikel yang termasuk dalam rekam jepret atau publikasi transaksi

  1. Buat koneksi ke Publisher dengan menggunakan ServerConnection kelas .

  2. Membuat instans kelas TransArticle.

  3. Atur Nameproperti , PublicationName, dan DatabaseName .

  4. Atur koneksi dari langkah 1 untuk ConnectionContext properti .

  5. IsExistingObject Periksa properti untuk memverifikasi bahwa artikel tersebut ada. Jika nilai properti ini salah, properti artikel di langkah 3 didefinisikan dengan salah atau artikel tidak ada.

  6. Panggil Remove metode.

  7. Tutup semua koneksi.

Untuk menghapus artikel yang termasuk dalam publikasi gabungan

  1. Buat koneksi ke Publisher dengan menggunakan ServerConnection kelas .

  2. Membuat instans kelas MergeArticle.

  3. Atur Nameproperti , PublicationName, dan DatabaseName .

  4. Atur koneksi dari langkah 1 untuk ConnectionContext properti .

  5. IsExistingObject Periksa properti untuk memverifikasi bahwa artikel tersebut ada. Jika nilai properti ini salah, properti artikel di langkah 3 didefinisikan dengan salah atau artikel tidak ada.

  6. Panggil Remove metode.

  7. Tutup semua koneksi.

Lihat Juga

Menambahkan Artikel ke dan Menghapus Artikel dari Publikasi yang Ada
Konsep Prosedur Tersimpan Sistem Replikasi