Using a 4 digit key you could represent every day from a predefined base and start counting from that base.
For example (using 1/1/2000 as base) :
DateTime dt = new DateTime(2000,1,1);
DateTime dtEnd = dt.AddDays(9999);
Console.WriteLine("Maximum date available:" + dtEnd.ToShortDateString());
dtEnd = new DateTime(2013,7,25);
TimeSpan ts = dtEnd - dt;
Console.WriteLine("Today Day number from base: " + ts.TotalDays);
Of course you could easily fine-tune your range changing the base date and setting it to a different value. However, once set and starting to save data in db it will be not easy to change the base value. I would recommend to avoid this pattern and choose a more flexible way to store unique keys in a table, but, of course, I don't know your requirements.