![]() Image copyright (c) 1998 by PhotoDisc, Inc. Used under license. |
Why You Should Enter Dates With Four-Digit Years Whenever Possible |
Many of us have undoubtedly adopted the common habit of entering dates containing just two digits for the year (ending in values like "98" or "/98") into our application programs. For example, we may have typed dates with two-digit years into spreadsheet cells or entered such dates into our database or client/server programs.
As we begin the transition to the 21st Century, this habit of
entering dates in a "shorthand" format with only two-digit years
can cause problems. When you enter a date with only a two-digit year,
such as 05/13/29,
many application programs will essentially take an educated guess at what
century -- the 20th or 21st -- "you probably meant."
Because automated rules can never perfectly substitute for human
judgment, sometimes your programs may guess wrong. If you don't
notice when your programs have done this, you run the risk that some
dates will be assigned to centuries other than you intended.
In some cases, this could significantly impact the integrity of your data.
For this reason we recommend that, whenever possible, you enter
dates with full, four-digit years (e.g. 05/13/2029)
into spreadsheets, database files, and other data files.
It's preferable that you tell your programs what century your dates
belong to, rather than leaving it up to your programs to guess at this.
(You can also enforce this policy: if you should require that your most
critical dates always be entered with full,
four-digit years, some database programs - and certain other types of programs - offer
"field validation" or "input mask" options that you can use for this purpose.)
Some programs use a "windowing" rule which assigns dates to either the 20th or 21st Centuries by comparing their two-digit year to a "pivot year": dates with two-digit years higher than the pivot year are assigned to the 20th Century, and dates with two-digit years lower than (or equal to) the pivot year are assigned to the 21st Century. By contrast, some other, typically older, applications simply assume that all two-digit-year dates fall into the 1900s.
The following are some representative examples of how programs differ in their handling of dates with two-digit years:
| FileMaker Pro 2.1 | 1900 to 1999 | 1925 |
| FileMaker Pro 3.0, 4.0, 4.1, and 5.0 |
1910 to 2009 or 1990 to 2089 (depending on the current system date) |
1925 or 2025 |
| Microsoft Access 2.0 | 1900 to 1999 | 1925 |
| Microsoft Access 7.0 and Access 8.0 | 1930 to 2029 | 2025 |
| Microsoft Excel 4.0 | 1900 to 1999 | 1925 |
| Microsoft Excel 5.0 | 1920 to 2019 | 1925 |
| Microsoft Excel 95 (7.0) |
1920 to 2019 or 1930 to 2029 (depending on the version of the Windows OLE Automation Libraries in use) |
1925 or 2025 |
| Microsoft Excel 97 (8.0) and Excel 98 | 1930 to 2029 | 2025 |
| Lotus 1-2-3 |
1900 to 1999 or 1950 to 2049 (depending on workstation settings) |
1925 or 2025 |
| Quicken 98, Quicken 99, and Quicken 2000 |
1900 to 1949 or 1950 to 2026 (depending on whether two-digit-year dates are entered with an apostrophe as 12/31'00 or with a slash as 12/31/00)
|
1925 or 2025 |
| SAS Software (various products) versions prior to 7 |
1900 to 1999 (can be changed via the YEARCUTOFF= option)
|
1925 |
| SAS Software (various products) versions 7 and 8 |
1920 to 2020 (can be changed via the YEARCUTOFF= option)
|
1925 |
(The examples above describe how these programs handle two-digit year dates entered from the keyboard directly into data files. Some of these programs handle imported dates, or dates used in other program functions, in different ways than described above.)
The methods your programs use to decide to which century to assign a date with a two-digit year may vary depending on as many as four different factors:
05/13/29, some
earlier versions of Microsoft Excel will
interpret this date as May 13, 1929, while the latest versions of Excel
will interpret this date as May 13, 2029.
Worse, some (particularly older) programs are permanently stuck in the 1900s when it comes to dates with two-digit years, always interpreting such dates as falling into the 20th century. As a result, these programs would interpret "01/31/98" as January 31, 1998, as you might expect, but they would also interpret "01/31/00" as January 31, 1900, rather than as January 31, 2000.
The inability to be certain how your programs will assign dates with two-digit years to the 20th or 21st centuries makes a compelling case for always entering dates with four-digit years.
Some Y2K non-compliant application programs simply may not allow you to
enter dates with four-digit years.
Commercial Off-the-Shelf Applications: Finding & Resolving Y2K Problems
describes what you
can do if you should encounter one of these programs.
A few programs may require that, in order to enter dates with four digit years,
you first change your operating system's default date format to use four-digit years.
Changing Your Operating System's Default Date Format To Use Four-Digit Years
describes how to do so.