sys.sp_resyncmergesubscription (Transact-SQL)

Van toepassing op:SQL Server

Synchroniseert een merge-abonnement opnieuw met een bekende validatiestatus die je aangeeft. Je kunt convergentie forceren of de abonnementsdatabase synchroniseren naar een specifiek tijdstip, zoals de laatste keer dat er een succesvolle validatie was, of tot een bepaalde datum. De snapshot wordt niet opnieuw toegepast bij het opnieuw synchroniseren van een abonnement met deze methode. Deze opgeslagen procedure wordt niet gebruikt voor snapshot-replicatie-abonnementen of transactionele replicatie-abonnementen. Deze opgeslagen procedure wordt uitgevoerd bij de Publisher, in de publicatiedatabase, of bij de abonnee, in de abonnementsdatabase.

Transact-SQL syntaxis-conventies

Syntax

sys.sp_resyncmergesubscription
    [ [ @publisher = ] N'publisher' ]
    [ , [ @publisher_db = ] N'publisher_db' ]
    , [ @publication = ] N'publication'
    [ , [ @subscriber = ] N'subscriber' ]
    [ , [ @subscriber_db = ] N'subscriber_db' ]
    , [ @resync_type = ] resync_type
    [ , [ @resync_date_str = ] N'resync_date_str' ]
[ ; ]

Arguments

[ @publisher = ] N'uitgever'

De naam van de uitgever. @publisher is sysname, met een standaardwaarde van NULL. Een waarde van NULL is geldig als de opgeslagen procedure bij de Publisher wordt uitgevoerd. Als de opgeslagen procedure bij de Subscriber wordt uitgevoerd, moet een Publisher worden gespecificeerd.

[ @publisher_db = ] N'publisher_db'

De naam van de publicatiedatabase. @publisher_db is een systeemnaam, met als standaard NULL. Een waarde van NULL is geldig als de opgeslagen procedure wordt uitgevoerd bij de Publisher in de publicatiedatabase. Als de opgeslagen procedure bij de Subscriber wordt uitgevoerd, moet een Publisher worden gespecificeerd.

[ @publication = ] N'publicatie'

De naam van de publicatie. @publication is sysname, zonder standaard.

[ @subscriber = ] N'abonnee'

De naam van de abonnee. @subscriber is sysname, met als standaard .NULL Een waarde van NULL is geldig als de opgeslagen procedure wordt uitgevoerd bij de abonnee. Als de opgeslagen procedure bij de Publisher wordt uitgevoerd, moet een Subscriber worden opgegeven.

[ @subscriber_db = ] N'subscriber_db'

De naam van de abonnementsdatabase. @subscriber_db is systeemnaam, met als standaard .NULL Een waarde van NULL is geldig als de opgeslagen procedure wordt uitgevoerd bij de abonnee in de abonnementsdatabase. Als de opgeslagen procedure bij de Publisher wordt uitgevoerd, moet een Subscriber worden opgegeven.

[ @resync_type = ] resync_type

Definieert wanneer de hersynchronisatie moet beginnen. @resync_type is int, en kan een van de volgende waarden zijn.

Waarde Description
0 De synchronisatie begint na de eerste snapshot. Deze optie is het meest resource-intensief, omdat alle wijzigingen sinds de initiële snapshot opnieuw op de abonnee worden toegepast.
1 De synchronisatie begint sinds de laatste succesvolle validatie. Alle nieuwe of onvolledige generaties die sinds de laatste succesvolle validatie zijn ontstaan, worden opnieuw toegepast op de abonnee.
2 Synchronisatie begint op de datum die in @resync_date_str is opgegeven. Alle nieuwe of onvolledige generaties die na de datum ontstaan, worden opnieuw toegepast op de abonnee

[ @resync_date_str = ] N'resync_date_str'

Definieert de datum waarop de resynchronisatie moet beginnen. @resync_date_str is nvarchar(30), met een standaard van NULL. Deze parameter wordt gebruikt wanneer de @resync_type een waarde van 2is. De opgegeven datum wordt omgezet naar de equivalente datum-tijdwaarde .

Codewaarden retourneren

0 (geslaagd) of 1 (mislukt).

Remarks

sp_resyncmergesubscription wordt gebruikt bij merge-replicatie.

Een waarde van voor 0 de @resync_type-parameter , die alle wijzigingen sinds de eerste snapshot opnieuw toepast, kan veel middelen kosten, maar mogelijk veel minder dan een volledige herinitialisatie. Als bijvoorbeeld de eerste snapshot een maand geleden is geleverd, zou deze waarde ervoor zorgen dat gegevens van de afgelopen maand opnieuw worden toegepast. Als de initiële snapshot 1 gigabyte (GB) aan data bevatte, maar het aantal wijzigingen van de afgelopen maand bestond uit 2 megabyte (MB) aan gewijzigde data, zou het efficiënter zijn om de data opnieuw toe te passen dan de volledige 1-GB-snapshot opnieuw toe te passen.

Permissions

Alleen leden van de sysadmin-vaste serverrol of de db_owner vaste databaserol kunnen uitvoeren sp_resyncmergesubscription.