MSmerge_conflicts_info (Transact-SQL)
La tabella MSmerge_conflicts_info tiene traccia dei conflitti che si verificano durante la sincronizzazione di una sottoscrizione a una pubblicazione di tipo merge. I dati sui conflitti relativi alla riga non confermata vengono archiviati nella tabella MSmerge_conflict_publication_article relativa all'articolo in cui si è verificato il conflitto. Questa tabella è archiviata nel database di pubblicazione del server di pubblicazione e nel database di sottoscrizione del Sottoscrittore.
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
tablenick |
int |
Nome alternativo della tabella pubblicata. |
rowguid |
uniqueidentifier |
Identificatore della riga in conflitto. |
origin_datasource |
nvarchar(255) |
Nome del database in cui ha avuto origine la modifica in conflitto. |
conflict_type |
int |
Tipo di conflitto che si è verificato. I possibili valori sono i seguenti. 1 = Conflitto aggiornamento: il conflitto viene rilevato a livello di riga. 2 = Conflitto aggiornamento colonna: il conflitto viene rilevato a livello di colonna. 3 = Conflitto aggiornamento/eliminazione con esecuzione dell'eliminazione: l'eliminazione prevale. 4 = Conflitto aggiornamento/eliminazione con esecuzione dell'aggiornamento: il valore rowguid eliminato della riga non prioritaria viene registrato nella tabella. 5 = Inserimento di caricamento non riuscito: l'inserimento del Sottoscrittore non può essere applicato nel server di pubblicazione. 6 = Inserimento di download non riuscito: l'inserimento del server di pubblicazione non può essere applicato nel Sottoscrittore. 7 = Eliminazione di caricamento non riuscita: non è possibile caricare l'eliminazione dal Sottoscrittore al server di pubblicazione. 8 = Eliminazione di download non riuscita: non è possibile scaricare l'eliminazione dal server di pubblicazione al Sottoscrittore. 9 = Aggiornamento di caricamento non riuscito: non è possibile applicare l'aggiornamento nel Sottoscrittore al server di pubblicazione. 10 = Aggiornamento di download non riuscito: non è possibile applicare l'aggiornamento nel server di pubblicazione al Sottoscrittore. 11 = Risoluzione 12 = Conflitto aggiornamento/eliminazione di record logici con esecuzione dell'aggiornamento: il record logico eliminato non prioritario viene registrato nella tabella. 13 = Conflitto aggiornamento/inserimento di record logici: conflitto tra l'inserimento in un record logico e un aggiornamento. 14 = Conflitto aggiornamento/eliminazione di record logici con esecuzione dell'eliminazione: il record logico aggiornato non prioritario viene registrato nella tabella. |
reason_code |
int |
Codice di errore che può essere sensibile al contesto. In caso di conflitti aggiornamento-aggiornamento e aggiornamento-eliminazione, il valore utilizzato per questa colonna equivale a quello della colonna conflict_type. Per i conflitti di modifica non riuscita, tuttavia, il codice motivo è l'errore che ha impedito all'agente di merge l'applicazione della modifica. Se, ad esempio, l'agente di merge non può applicare un inserimento nel Sottoscrittore a causa di una violazione di chiave primaria, registra un conflict_type 6 ("inserimento di download non riuscito") e un reason_code 2627, che corrisponde al messaggio di errore interno di SQL Server per una violazione di chiave primaria, ovvero il messaggio "Violazione del vincolo %ls '%.*ls'. Impossibile inserire la chiave duplicata nell'oggetto '%.*ls'". |
reason_text |
nvarchar(720) |
Descrizione dell'errore che può essere sensibile al contesto. |
pubid |
uniqueidentifier |
Identificatore della pubblicazione. |
MSrepl_create_time |
datetime |
Ora in cui si è verificato il conflitto. |
origin_datasource_id |
uniqueidentifier |
Identificatore del database in cui ha avuto origine la modifica in conflitto. |
Vedere anche