Я надеюсь, что кто-то может указать мне правильное направление на этот. Вот мои разработки до сих пор.
SELECT * FROM sys.identity_columns
это системное представление, которое дает «last_value», но определение для этого представления использует внутреннюю функцию IdentityProperty(colName, 'LastValue')
- так что это тупик (не вытаскивая его из системной таблицы).
Везде (я смотрел) в Интернете предлагается использовать DBCC IDENT_...
команды для раскрытия значения, но это все еще оставляет меня в неведении относительно того, где оно на самом деле хранится.
Итак, я пришел к поиску отдельных страниц с помощью DBCC PAGE(TestDB,1,1325,3)
моего тестового жгута db и использовал RESEED
команду для повторного заполнения между значениями 10 и 12.
При этом я заметил шестнадцатеричные значения на IAM: Header
, IAM: Single Page Allocations
и IAM: Extent Alloc Status Slot 1
все изменилось. (И понял, что они периодически меняются вместе со значением bUse1, которое тоже изменяется постепенно).
Так что еще один тупик, и я все вне идей. Где еще я могу искать?
Я использую SQL Server 2014. У меня неутолимая жажда внутренних знаний, и я еще не сталкивался с чем-то таким неуловимым, как этот. Это привлекло мое внимание, потому что в теории оно (абсолютное значение) хранится где-то и должно (возможно) быть локализуемым. В моем стремлении найти места для хранения внутренних данных / метаданных это конкретное значение кажется мне неуловимым. Я предполагаю / надеюсь, что кто-то придет и скажет мне, вы можете получить это, DBCC PAGE
но я искал не в том месте.
источник