I created a table as below (SQL SERVER 2005)

Create Table Table2
(
Column1 Int Identity(1,1),
Column2 Varchar(10)
)
and inserted two rows into the table

Insert Into Table2 (Column2) Values ('A')
Insert Into Table2 (Column2) Values ('B')

using DBCC TRACEON(3604), DBCC IND and DBCC PAGE i got the following output.

...
Slot 0 Offset 0x60 Length 16
...
Slot 0 Column 0 Offset 0x4 Length 4
Column1 = 1
Slot 0 Column 1 Offset 0xf Length 1
Column2 = A

Slot 1 Offset 0x70 Length 16
...
Slot 1 Column 0 Offset 0x4 Length 4
Column1 = 2
Slot 1 Column 1 Offset 0xf Length 1
Column2 = B
...
which indicates that the size of row is 16 bytes and offset for col2 is 0xf in the record.

now i changed the column2 to varchar(2) using
Alter Table Table2 alter Column column2 varchar(2)

I executed DBCC PAGE again and got the following output
Slot 0 Offset 0x80 Length 19
...
Slot 0 Column 0 Offset 0x4 Length 4
Column1 = 1
Slot 0 Column 1 Offset 0x11 Length 1
DROPPED = A
Slot 0 Column 2 Offset 0x12 Length 1
Column2 = A
Slot 1 Offset 0x93 Length 19

...
Slot 1 Column 0 Offset 0x4 Length 4
Column1 = 2
Slot 1 Column 1 Offset 0x11 Length 1
DROPPED = B
Slot 1 Column 2 Offset 0x12 Length 1
Column2 = B


My Question here is, why am i getting record Length as 19 and
Slot 1 Column 1 Offset 0x11 Length 1
DROPPED = B
Slot 1 Column 2 Offset 0x12 Length 1
Column2 = B
in the output.