Condividi tramite


Risolutori Microsoft COM-Based

Tutti i resolver basati su COM forniti con SQL Server gestiscono i conflitti di aggiornamento e, dove indicato, gestiscono anche conflitti di inserimento ed eliminazione. Gestiscono tutti il tracciamento delle colonne; la maggior parte gestisce anche il rilevamento delle righe. Questi e tutti gli altri resolver basati su COM dichiarano i tipi di conflitto che possono gestire e l'agente di merge usa il sistema di risoluzione predefinito per tutti gli altri tipi di conflitto.

I resolver vengono installati durante il processo di installazione per SQL Server. Eseguire la stored procedure sp_enumcustomresolvers per visualizzare tutti i risolutori di conflitti registrati su un computer. L'esecuzione della procedura visualizza la descrizione e l'identificatore univoco globale (GUID) per ogni resolver in un set di risultati separato.

Per specificare un risolutore, vedere Specificare un Risolutore dell'Articolo di Merge.

Nella tabella seguente vengono descritti gli attributi dei resolver specifici.

Nome Input richiesto Descrizione Commenti
Microsoft SQL Server Risolutore di Conflitti Additivi Nome della colonna da sommare. Deve avere un tipo di dati aritmetico, ad esempio int, smallint, numerico e così via. Il vincitore del conflitto viene determinato dal valore di priorità. I valori di colonna specificati vengono impostati sulla somma dei valori di origine e della colonna di destinazione. Se uno è impostato su NULL, vengono impostati sul valore dell'altra colonna. Supporta i conflitti di aggiornamento, solo il rilevamento delle colonne.
Microsoft SQL Server Risolutore di Conflitti di Media Nome della colonna da mediare. Deve avere un tipo di dati aritmetico, ad esempio int, smallint, numerico e così via. Il vincitore del conflitto viene determinato dal valore di priorità. I valori delle colonne risultanti vengono impostati sulla media dei valori di origine e della colonna di destinazione. Se uno è impostato su NULL, vengono impostati sul valore dell'altra colonna. Supporta i conflitti di aggiornamento, solo il rilevamento delle colonne.
Microsoft SQL Server DATETIME (Precedenza al Più Vecchio) Risolutore di Conflitti Nome della colonna da utilizzare per determinare il vincitore del conflitto. Il tipo di dati deve essere datetime . La colonna con il valore datetime precedente determina il vincitore del conflitto. Se uno è impostato su NULL, la riga contenente l'altra è il vincitore. Supporta conflitti di aggiornamento, rilevamento di righe e di colonne. I valori delle colonne vengono confrontati direttamente e non viene apportata una regolazione per fusi orari diversi.
Microsoft SQL Server DATETIME (Later Wins) Risolutore di Conflitti Nome della colonna da utilizzare per determinare il vincitore del conflitto. Deve avere un tipo di dati datetime . La colonna con il valore datetime successivo determina il vincitore del conflitto. Se uno è impostato su NULL, la riga contenente l'altra è il vincitore. Supporta i conflitti di aggiornamento, il tracciamento delle righe e delle colonne.
Microsoft SQL Server Risolutore Massimo di Conflitti Nome della colonna da utilizzare per determinare il vincitore del conflitto. Deve avere un tipo di dati aritmetico, ad esempio int, smallint, numerico e così via. La colonna con il valore numerico più grande determina il vincitore del conflitto. Se uno è impostato su NULL, la riga contenente l'altra è il vincitore. Supporta il rilevamento di righe e colonne.
Microsoft SQL Server Risolutore di Conflitti Minimi Nome della colonna da utilizzare per determinare il vincitore del conflitto. Deve avere un tipo di dati aritmetico, ad esempio int, smallint, numerico e così via. La colonna con il valore numerico più piccolo determina il vincitore del conflitto. Se uno è impostato su NULL, la riga contenente l'altra è il vincitore. Supporta la risoluzione dei conflitti di aggiornamento e il tracciamento di righe e colonne.
Risolutore di conflitti di unione testo di Microsoft SQL Server Nome della colonna di testo e del delimitatore, @resolver_info = '[col1][===]'ad esempio . Il vincitore del conflitto viene determinato dal valore di priorità. Le colonne di testo in conflitto vengono impostate sul valore unito, costituito dal prefisso comune seguito dalla parte univoca del Publisher, dal delimitatore e infine dalla parte univoca del Subscriber. Supporta i conflitti di aggiornamento, solo il rilevamento delle colonne.
Microsoft SQL Server Subscriber "Always Wins Conflict Resolver" Nessun input. Il sottoscrittore, indipendentemente che si tratti dell'origine o della destinazione, è il vincitore. Supporta tutti i tipi di conflitto.
Risolutore di Colonne Prioritarie di Microsoft SQL Server Nome della colonna da utilizzare per determinare il vincitore del conflitto. Deve avere un tipo di dati aritmetico, ad esempio int, smallint, numerico e così via. La colonna con il valore numerico più grande determina il vincitore del conflitto. Se uno è impostato su NULL, la riga contenente l'altra è il vincitore. Supporta conflitti di aggiornamento, rilevamento di righe e colonne.
Microsoft SQL Server Risolutore di conflitti solo caricamento Nessun input. Le modifiche caricate nel server di pubblicazione vengono accettate; le modifiche non vengono scaricate nel Sottoscrittore. Supporta tutti i tipi di conflitto.
Microsoft SQL Server Scaricabile Solo Risolutore di Conflitti Nessun input. Le modifiche caricate al Publisher vengono rifiutate; le modifiche vengono scaricate al Subscriber. Supporta tutti i tipi di conflitto.
Risolutore di stored procedure Microsoft SQLServer Nome della stored procedure che il sistema di risoluzione deve chiamare per gestire il conflitto. La risoluzione dei conflitti dipende dalla logica specificata nella stored procedure. Supporta i conflitti di aggiornamento. Per altre informazioni, vedere Implementare un sistema di risoluzione dei conflitti personalizzato per un articolo di merge

Vedere anche

Rilevamento e risoluzione avanzata dei conflitti di replicazione di unione
sp_enumcustomresolvers (Transact-SQL)