Bug #14860 mysql admits wrong dates
Submitted: 11 Nov 2005 11:23 Modified: 11 Nov 2005 12:07
Reporter: Felix Garcia Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server Severity:S2 (Serious)
Version:4.1.14 OS:Linux (linux 2.4.5)
Assigned to: MySQL Verification Team CPU Architecture:Any

[11 Nov 2005 11:23] Felix Garcia
Description:
You can insert or update a date field with wrong values like "2005-02-31" or "2005-11-31"
It doesn't validate date fields.

How to repeat:
Inserting a wrong date like "2005-02-31" or "2005-11-31" in a date field.

Suggested fix:
validate date fields.
[11 Nov 2005 12:07] MySQL Verification Team
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.mysql.com/documentation/ and the instructions on
how to report a bug at http://bugs.mysql.com/how-to-report.php

Additional info:

Please read: http://dev.mysql.com/doc/refman/4.1/en/datetime.html

"The MySQL server performs only basic checking on the validity of a date: The ranges for year, month, and day are 1000 to 9999, 00 to 12, and 00 to 31, respectively. Any date containing parts not within these ranges is subject to conversion to '0000-00-00'. Please note that this still allows you to store invalid dates such as '2002-04-31'. To ensure that a date is valid, perform a check in your application."

and also: http://dev.mysql.com/doc/refman/5.0/en/datetime.html

how to handle that on version 5.0 with strict mode.