Colonne di garanzia di SQL Server di identità che due valori consecutivi differiscono di incrementi costanti?
-
16-10-2019 - |
Domanda
ho posto una domanda su sequenze Denali qui e un'altra domanda circa l'emulazione di colonne identity nelle tabelle globali Oracle qui .
Ho sempre pensato che potevo fidarmi che i valori Incremento identità con incrementi costanti. D'altra parte, so che l'uso di sequenze che non può mai essere sicuro che non ci sono alcune lacune in loro.
E 'tempo di adattarsi alle lacune in sequenze o sarà meglio rimanere con colonne di identità in tabelle temporanee?
Soluzione
Non è in grado di garantire i valori di identità contigui o consecutive in SQL Server
- Un inserto di più righe non garantisce questo. Vedere Do Inserito Records sempre ricevono valori contigui Identity .
- L'attuale valore di identità incrementato il rollback soggiorni (sia ROLLBACK esplicita o implicita a causa di un errore di vincolo).
Inoltre:
- Caricamento una tabella temporanea non garantisce valori consecutivi. Detto questo, questo è più difficile da dimostrare, e funziona in pratica (come molta gente si basano su di esso), ma attenzione ...
Bisogna adattarsi a lacune nella numerazione, tuttavia generato.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a dba.stackexchange