Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Colonna identità di SQL Server 2000/2005 + replica

È disponibile l'opzione "NON PER LA REPLICA " che può essere applicato alle colonne identità (e trigger e altri vincoli).

Nel tuo esempio, il server 1 indicherebbe 1-10 ma accetterebbe semplicemente 11-20 replicati.

Un paio di modi per impostare i semi:

O:imposta il tuo seme/incrementi con NOT FOR REPLICATION in questo modo

  • Seme 1, incremento 2
  • Seme 2, incremento 2
  • Seme -1, incremento -2
  • Seme -2, incremento -2
  • Seme 1000000001, incremento 2
  • Seme 1000000002, incremento 2
  • Seme -1000000002, incremento -2
  • Seme -1000000001, incremento -2

Questo ti dà 500.000.000 per server per 8 server

Oppure:aggiungi una seconda colonna chiamata ServerID per fornire chiavi composte, usa NOT FOR REPLICATION per la colonna ID

Questo scala fino a, diciamo, 256 server per tinyint con 2^32 righe per server

In ogni caso funziona...