Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Managed Instance
Szczegóły wiadomości
| Attribute | Wartość |
|---|---|
| Nazwa produktu | SQL Server |
| Identyfikator zdarzenia | 2627 |
| Źródło zdarzenia | MSSQLSERVER |
| Składnik | Mechanizm Bazy Danych SQL Server |
| Nazwa symboliczna | N/A |
| Tekst wiadomości | Naruszenie ograniczenia %ls "%.*ls". Nie można wstawić zduplikowanego klucza w obiekcie "%.*ls". |
Explanation
Jest to błąd ogólny, który może wystąpić niezależnie od tego, czy baza danych jest replikowana. W bazach danych replikowanych błąd jest zazwyczaj zgłaszany, ponieważ klucze pierwotne nie zostały odpowiednio zarządzane w całej topologii. W środowisku rozproszonym kluczowe jest zapewnienie, że ta sama wartość nie zostanie wstawiona do kolumny klucza głównego ani żadnej innej unikalnej kolumny na więcej niż jednym węźle. Możliwe przyczyny obejmują następujące elementy:
Wstawiania i aktualizacje wiersza zachodzą w więcej niż jednym węźle. Replikacja scalania oraz aktualizowalne subskrypcje do replikacji transakcyjnej zapewniają wykrywanie i rozwiązywanie konfliktów, ale nadal preferuje się wstawianie lub aktualizowanie danego wiersza tylko w jednym węźle. Transakcyjne peer-to-peer nie zapewniają wykrywania i rozwiązywania konfliktów; wymaga podziału wstawek i aktualizacji.
Wiersz został dodany do abonenta, który powinien być tylko do odczytu. Subskrybenci publikacji snapshot powinni być traktowani jako tylko do odczytu, podobnie jak subskrybenci publikacji transakcyjnych, chyba że stosuje się aktualizowalne subskrypcje lub replikację transakcyjną peer-to-peer.
Używana jest tabela z kolumną tożsamości, ale kolumna nie jest odpowiednio zarządzana.
Akcja użytkownika
Wymagane działanie zależy od powodu zgłoszenia błędu:
Wstawiania i aktualizacje wiersza zachodzą w więcej niż jednym węźle.
Niezależnie od rodzaju zastosowanej replikacji, zalecamy partycjonowanie wstawiań i aktualizacji, gdy tylko to możliwe, ponieważ zmniejsza to przetwarzanie potrzebne do wykrywania i rozwiązywania konfliktów. Do replikacji transakcyjnej peer-to-peer wymagane są wstawiania i aktualizacje partycjonowania. Aby uzyskać więcej informacji, zobacz Peer-to-Peer Transactional Replication.
Wiersz został dodany do abonenta, który powinien być tylko do odczytu.
Nie wstawiaj ani nie aktualizuj wierszy w Subscriber, chyba że korzystasz z replikacji scalania, replikacji transakcyjnej z aktualizowalnymi subskrypcjami lub replikacji transakcyjnej peer-to-peer.
Używana jest tabela z kolumną tożsamości, ale kolumna nie jest odpowiednio zarządzana.
Dla replikacji scalania i replikacji transakcyjnej z subskrypcjami podlegającymi aktualizacjom, kolumny tożsamości powinny być zarządzane automatycznie przez replikację. Dla replikacji transakcyjnej peer-to-peer muszą być zarządzane ręcznie. Aby uzyskać więcej informacji, zobacz Replikowanie kolumn tożsamości.