Range for Oracle Date Data Type: "January 1, 4712 BC to December 31, 9999 AD", Does the range has any logic behind it? I mean the range has any historic significance or it has something related to programming and memory size etc. I am just wondering, why only from January 1, 4712 BC to December 31, 9999 AD.
views:
66answers:
3I suspect that it's set the upper limit for ease of formating to the highest 4 digit year, and then deduced the start of range by the capackity of the underlying type.
That's the Julian date?
http://en.wikipedia.org/wiki/Julian_day
Wikipedia says 4713, hmm...off by 1...
I guess the upper limit is just because of the 4 digits.
Oracle doc says
http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/datatype.htm#i1847
Julian dates allow continuous dating by the number of days from a common reference. (The reference is 01-01-4712 years BCE, so current dates are somewhere in the 2.4 million range.)
EDIT
I guess the reason for 4712 instead of 4713 is that the conversion requires Y >= -4712:
http://en.wikipedia.org/wiki/Julian_day#Converting_Julian_calendar_date_to_Julian_Day_Number
4712: have a look at julian day: http://en.wikipedia.org/wiki/Julian_day#Alternatives
9999: the highest value presented in 4 digits - at end of this year we will have another "milleniumbug"