@ risposta di abcdefghi è buono, ma solo per aggiungere ad essa;
- TRANSACTION_ID è la stessa all'interno di una transazione,
- fuori una transazione esplicita, aggiornamenti TRANSACTION_ID su ciascun lotto,
- azzera TRANSACTION_ID quando il ripristino del server, in modo che si incontrano nello stesso transaction_id nel corso del tempo.
Ciò significa che non è possibile utilizzare transaction_id nelle tabelle di controllo, a causa di questo scenario;
record di controllo inserito con transaction_id = 42 sql server ripristinato ... 41 nuovi lotti eseguiti ... record di controllo inserito con transaction_id = 42
Inoltre, non è possibile utilizzare transaction_id come un timestamp (valori più alti non implicano modifiche successive_ e non si può dire che lo stesso ID implichi la stessa transazione
fonte
2014-07-31 10:57:55
Interessante domanda, questa pagina [wikipedia sembra pertinente] (http://en.wikipedia.org/wiki/Microsoft_SQL_Server# Logging_and_Transaction) – Andomar
Non penso che sia probabile che l'ID venga riutilizzato e che tu possa mai notare. bigint che può salire a 9.223.372.036.854.775.807. Sembra anche aumentare solo. – Zhenny
@Zhenny, si ricorda che l'ID verrà riutilizzato. transaction_id viene ripristinato su SQL in fase di riavvio. –