Może to oznaczać jeden z tych dwóch typowych problemów:
1) Daty zerowe, czyli 0000-00-00 w MySQL. MySQL pozwala na przechowywanie ich w celu oznaczenia dat 0, możesz nawet użyć 0001-01-01, ale nie wszystkie sterowniki lub dalsze programy mogą je obsłużyć. Dodaj do ciągu połączenia
Allow Zero Datetime=true;
Innym wyborem jest wyraźne ich usunięcie, coś w rodzaju
SELECT IF(DateCol='0000-00-00' OR DateCol<'1970-01-01', NULL, DateCol) as DateCol,
Othercol1, ID ....
FROM TBL
2) Formatowanie daty. W przypadku niektórych kombinacji sterownika/programu daty są traktowane jako ciągi. Wyraźna konwersja jest konieczna:
SELECT DATE_FORMAT(DateCol, '%m/%d/%Y') as DateCol,
Othercol1, ID ....
FROM TBL