Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Kolumna tożsamości SQL Server 2000/2005 + replikacja

Dostępna jest opcja „NIE DO REPLIKACJI ", które można zastosować do kolumn tożsamości (oraz wyzwalaczy i innych ograniczeń).

W twoim przykładzie serwer1 miałby inicjację 1-10, ale po prostu zaakceptowałby replikowane 11-20.

Kilka sposobów na ustawienie nasion:

Albo:ustaw swoje ziarno/przyrosty za pomocą NIE DO POWTÓRZENIA w ten sposób

  • Ziarno 1, przyrost 2
  • Ziarno 2, przyrost 2
  • Nasiona -1, przyrost -2
  • Nasiona -2, przyrost -2
  • Nasiona 1000000001, przyrost 2
  • Nasiona 1000000002, przyrost 2
  • Nasiona -1000000002, przyrost -2
  • Nasiona -1000000001, przyrost -2

Daje to 500 000 000 na serwer dla 8 serwerów

Lub:Dodaj drugą kolumnę o nazwie ServerID, aby podać klucze złożone, użyj opcji NOT FOR REPLICATION dla kolumny ID

To skaluje się do, powiedzmy, 256 serwerów dla tinyint z 2^32 wierszami na serwer

Tak czy inaczej działa...




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. .NET Entity Framework i transakcje

  2. Serwer Sql - Uzyskaj identyfikatory zsumowanych wierszy

  3. SQL Server 2008:Zmienić nazwę elementu za pomocą XML DML?

  4. Jak mapować uint w NHibernate za pomocą SQL Server 2005

  5. TSQL zwraca NO lub YES zamiast TRUE lub FALSE