Procedura: Specifica del livello di rilevamento e risoluzione dei conflitti per gli articoli di merge (programmazione Transact-SQL della replica)

Quando si sincronizza una sottoscrizione di una pubblicazione di tipo merge, la replica verifica la presenza di conflitti causati dalle modifiche apportate agli stessi dati nel server di pubblicazione e nel Sottoscrittore. È possibile specificare se rilevare i conflitti a livello di riga, ovvero considerare un conflitto qualsiasi modifica apportata alla riga, o a livello di colonna, ovvero considerare un conflitto solo le modifiche apportate alla stessa riga e colonna. La risoluzione dei conflitti relativi agli articoli viene eseguita a livello di riga. Per ulteriori informazioni sul rilevamento e sulla risoluzione dei conflitti in caso di utilizzo dei record logici, vedere Rilevamento e risoluzione dei conflitti nei record logici. È possibile specificare a livello di programmazione la modalità di rilevamento dei conflitti durante la creazione di articoli e dopo la definizione di un articolo.

Per specificare le opzioni di rilevamento dei conflitti per un nuovo articolo di merge

  • Nel database di pubblicazione del server di pubblicazione eseguire sp_addmergearticle e specificare uno dei valori seguenti per @column_tracking:

    • true: consente di utilizzare il rilevamento a livello di colonna per l'articolo.

    • false: consente di utilizzare il rilevamento a livello di riga, che corrisponde all'impostazione predefinita.

Per modificare le opzioni di rilevamento dei conflitti per un articolo di merge

  1. Per determinare le opzioni di rilevamento dei conflitti per un articolo di merge, eseguire sp_helpmergearticle. Notare il valore dell'opzione column_tracking nel set di risultati relativo l'articolo. Il valore 1 indica che viene utilizzato il rilevamento a livello di colonna, mentre il valore 0 indica che viene utilizzato il rilevamento a livello di riga.

  2. Nel database di pubblicazione del server di pubblicazione eseguire sp_changemergearticle. Specificare il valore column_tracking per @property e uno dei valori seguenti per @value:

    • true: consente di utilizzare il rilevamento a livello di colonna per l'articolo.

    • false: consente di utilizzare il rilevamento a livello di riga, che corrisponde all'impostazione predefinita.

    Specificare il valore 1 sia per @force_invalidate_snapshot che per @force_reinit_subscription.