|
[
Permalink
| « Hide
]
Dmitry Yemanov added a comment - 29/Jan/08 01:24 PM
The error means to say that some column has an invalid date value (outside the supported range). Prior to v2.1, it was possible to store such invalid values in the database, but now it's prohibited. A verbose output should point you to a problematic table.
I received the same error for a database that was working quite happily with Firebird 2.04. When I upgraded to Firebird 2.1.1 I was then unable to perform a select from the table containing the relevant field. This stops my application from working as in the table is queried each time that the application opens and this failing stops my application from showing any data. I even tried doing a gBak -restore on a backup of this database but this again failed with the "value exceeds the range for valid dates" error. This I eventually found to be down to a date field that was left in the table but not used. This would stop all of my customers from working with Firebird 2.1.1 until they received an executable from me which either set this field to a valid date or null or dropped this field.
Would it not be a better solution to either in the database engine or the gBak -restore to set any fields that would result in this error, to a predetermined or null date value. The current behavior is intended and is unlikely to be changed.
Just in case it would be useful for someone. We put instructions on how to deal with the problem here:
http://gedemin.blogspot.com/2011/05/value-exceeds-range-for-valid-dates.html the page is in russian. |