У меня есть транзакция, которая вставляет несколько строк в одну таблицу.Reseed IDENTITY к First в случае ROLLBACK
Скажем так: Моя таблица имеет максимальный идентификатор 100, а затем мне нужно вставить еще 100 строк, где на финише максимальный ID будет 200. Другие транзакции, ожидающие завершения моей транзакции, и они зарезервировали номер 201, независимо моя транзакция завершается успешно или нет.
Откат транзакция не помогает переустановке ID 100, потому что если я кладу заявление, тождественным вне сделку, другие сделки, имеют более высокий приоритет, и они уже зарезервированы номеру 201.
Осы на переустановку столбца идентификации т.е. 100, если мой откат транзакции, но до того, как другая транзакция займет следующий ID?
Надеюсь, я был достаточно ясен.
Не используйте 'IDENTITY', если вам нужна последовательность без пробелов. Он не предназначен для этой цели. Зачем тебе это нужно? –
Кроме того, на сервере Sql 2012 [столбцы IDENTITY будут увеличиваться на 1000 при перезапуске сервера] (http://www.codeproject.com/Tips/668042/SQL-Server-2012-Auto-Identity-Column-Value- Jump-Is) – stuartd