J'espère que quelqu'un pourra m'orienter dans la bonne direction sur celui-ci. Voici mes travaux jusqu'à présent.
SELECT * FROM sys.identity_columnsest une vue système qui donne "last_value" mais la définition de cette vue utilise une fonction interne IdentityProperty(colName, 'LastValue')- c'est donc une impasse (ne pas la tirer d'une table système là-bas).
Partout (j'ai regardé) sur Internet suggère d'utiliser des DBCC IDENT_...commandes pour découvrir la valeur mais cela me laisse toujours dans le noir quant à l'endroit où il est réellement stocké.
Donc, je suis arrivé à rechercher les pages individuelles avec DBCC PAGE(TestDB,1,1325,3)mon harnais de test db et à utiliser la RESEEDcommande pour réamorcer entre les valeurs 10 et 12.
Ce faisant, j'ai remarqué les valeurs hexadécimales sur le IAM: Header, IAM: Single Page Allocationset IAM: Extent Alloc Status Slot 1tout a changé. (Et réalisé qu'ils changent de toute façon périodiquement avec la valeur bUse1 qui change également de façon incrémentielle).
Donc une autre impasse et je suis à court d'idées. Où puis-je chercher?
J'exécute SQL Server 2014. J'ai une soif insatiable de connaissances internes et je n'ai encore rien rencontré d'aussi insaisissable. Cela a attiré mon attention parce qu'en théorie, il (une valeur absolue) est stocké quelque part et devrait (sans doute) être localisable. Dans ma quête pour dénicher des emplacements de données / métadonnées stockées en interne, cette valeur particulière me semble particulièrement insaisissable. J'imagine / j'espère que quelqu'un viendra me dire, vous pouvez l'obtenir DBCC PAGEmais je cherchais au mauvais endroit.