Я сподіваюся, що хтось може вказати на мене в потрібному напрямку. Ось мої розробки поки що.
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
але я шукав не в тому місці.