J'ai un dossier que je considérais en utilisant la commande page DBCC. Voici à quoi il ressemble:Structure d'un dossier qui a une colonne de texte
Memory Dump @0x00E5C060
00000000: 30000800 01000000 02000001 001f8000 †0...............
00000010: 00d10700 0000009a 00000001 000000††††...............
Slot 0 Column 0 Offset 0x4 Length 4
col1 = 1
col2 = [Textpointer] Slot 0 Column 1 Offset 0xf Length 16
TextTimeStamp = 131137536 RowId = (1:154:0)
ici col1
est de type int
et col2
est de type ntext
.
Je sais que les valeurs de colonne ntext
sont stockées dans la page de texte.
Mais je ne sais pas comment interpréter les informations ci-dessus col2, à savoir
col2 = [Textpointer] Slot 0 Column 1 Offset 0xf Length 16
TextTimeStamp = 131137536 RowId = (1:154:0)
Quelqu'un peut-il me aider à comprendre cela?
Merci pour la réponse,
"col2 = [Textpointer] Slot 0 Column 1 Offset 0xf Length 16"
00000000: 30000800 01000000 02000001 001f8000 †0...............
00000010: 00d10700 0000009a 00000001 000000††††...............
En cela, il est dit que la longueur de l'info est 16. Ses valeurs hexadécimales équivalentes sont:
00 00d10700 0000009a 00000001 000000†††
je peux trouver des informations sur
TextTimeStamp = 131137536 RowId = (1:154:0)
dans les valeurs hexadécimales ci-dessus. Mais comment puis-je trouver des informations que c'est un pointeur de texte?
Par ailleurs, dans un autre cas, je suis tombé sur [Inline Blob root]
pour une valeur de type de données nvarchar.
Voilà comment il a regardé:
col6= [BLOB Inline Root] Slot 1 Column 38 Offset 0x16d Length 24
Level = 0 Unused = 0 UpdateSeq = 1
TimeStamp = 1969553408
Link 0
ici si vous remarquez la longueur est 24 contrairement à l'instance précédente (pointeur de texte) Il contient des informations supplémentaires ainsi que la séquence de mise à jour est UpdateSeq = 1 .
Comment puis-je distinguer entre les deux instances en regardant la séquence d'octets?