Aracılığıyla paylaş


sp_marksubscriptionvalidation (Transact-SQL)

Geçerli açık hareket bir abonelik düzey geçerlilik hareket için belirtilen abone olarak işaretler.Bu saklı yordam, yayın veritabanı üzerinde yayımcı adresindeki yürütülür.

Konu bağlantısı simgesiTransact-sql sözdizimi kuralları

Sözdizimi

sp_marksubscriptionvalidation [ @publication = ] 'publication'
        , [ @subscriber = ] 'subscriber'
        , [ @destination_db = ] 'destination_db'
    [ , [ @publisher = ] 'publisher' ]

Bağımsız değişkenler

  • [ @ yayın=] 'publication'
    Is the name of the publication.publication is sysname, with no default.

  • [ @ Abone =] 'subscriber'
    Is the name of the Subscriber.subscriber is sysname, with no default.

  • [ @destination_db=] 'destination_db'
    Is the name of the destination database.destination_db is sysname, with no default.

  • [ @publisher= ] 'publisher'
    Specifies a non-Microsoft SQL Server Publisher.publisher is sysname, with a default of NULL.

    Not

    publisherait olduğu yayın kullanılmamalıdır bir SQL Server Yayımcı.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (başarısız)

Açıklamalar

sp_marksubscriptionvalidation 'deki işlem çoğaltma kullanılır.

sp_marksubscriptionvalidation olmayan desteklemiyor-SQL Server aboneleri.

İçin olmayan-SQL Server olamaz yürütmek Publishers, sp_marksubscriptionvalidation karşı belirtik işlem içinden.Açık hareketler kullanılan bağlantılı sunucu bağlantısı üzerinden desteklenmiyor olmasıdır erişmek için Yayımcı.

sp_marksubscriptionvalidation ile birlikte kullanılması gereken sp_article_validation (Transact-SQL), değeri belirtme 1 için subscription_levelve diğer aramalar için kullanılabilir sp_marksubscriptionvalidation geçerli açık hareket için diğer abonelerin işaretlemek için.

İzinler

Yalnızca üyeleri sysadmin sabit sunucu rolü veya db_owner sabit veritabanı rolü olabilir yürütmek sp_marksubscriptionvalidation.

Örnek

Aşağıdaki sorgu, abonelik düzey geçerlilik komutları göndermek için yayımlama veritabanını uygulanabilir.Bu komutlar belirtilen aboneleri dağıtım aracıları tarafından toplanmış.Not ilk hareket makale doğrular 'art1', ikinci hareket doğrular'art2'.Ayrıca çağrı sp_marksubscriptionvalidation ve sp_article_validation (Transact-SQL) kapsüllenmiş bir hareket.Tek bir çağrı öneririz sp_article_validation (Transact-SQL) başına hareket.Bu, çünkü sp_article_validation (Transact-SQL) tutan bir paylaşılan tablo kilidi kaynak tablosundaki süresince işlem.Hareket eşzamanlılık en üst düzeye çıkarmak için kısa tutmalısınız.

begin tran

exec sp_marksubscriptionvalidation @publication = 'pub1',
 @subscriber = 'Sub', @destination_db = 'SubDB'

exec sp_marksubscriptionvalidation @publication = 'pub1',
 @subscriber = 'Sub2', @destination_db = 'SubDB'

exec sp_article_validation @publication = 'pub1', @article = 'art1',
 @rowcount_only = 0, @full_or_fast = 0, @shutdown_agent = 0,
 @subscription_level = 1

commit tran

begin tran

exec sp_marksubscriptionvalidation @publication = 'pub1',
 @subscriber = 'Sub', @destination_db = 'SubDB'

exec sp_marksubscriptionvalidation @publication = 'pub1',
 @subscriber = 'Sub2', @destination_db = 'SubDB'

exec sp_article_validation @publication = 'pub1', @article = 'art2',
 @rowcount_only = 0, @full_or_fast = 0, @shutdown_agent = 0,
 @subscription_level = 1

commit tran