DATEis the byte-reversed number of days since the year 0001-01-01, stored as three bytes. It goes up to 9999-12-31, which is stored as
0xDAB937. You can check this value by reversing the bytes and sticking them into a hex calculator.
37 B9 DAequals 3,652,058, which is the number of days since 0001-01-01.
If you try to cast
DATEvalue (by incrementing the least significant bit
DAby 1), it will throw a conversion error. There is obviously some overflow detection that protects against corruption in a date type.
Randolph looks at
DATETIME and explains how each is storedon a page.