Problemet är formatet %h:%i:%s
Här är vad som händer i mysql
mysql> select str_to_date('10-09-1985 00:00:00','%d-%m-%Y %h:%i:%s');
+--------------------------------------------------------+
| str_to_date('10-09-1985 00:00:00','%d-%m-%Y %h:%i:%s') |
+--------------------------------------------------------+
| NULL |
+--------------------------------------------------------+
Så den returnerar NULL och infogningen går inte, så du måste använda formatet %H:%i:%s
mysql> select str_to_date('10-09-1985 00:00:00','%d-%m-%Y %H:%i:%s');
+--------------------------------------------------------+
| str_to_date('10-09-1985 00:00:00','%d-%m-%Y %H:%i:%s') |
+--------------------------------------------------------+
| 1985-09-10 00:00:00 |
+--------------------------------------------------------+
För 10-09-1985 01:00:00
datumformatet är giltigt med %h:%i:%s
så det fungerar.
Det är bättre att välja datumformatet Y-m-d H:i:s
även med inmatningsdatum, sedan 10-09-1985 01:00:00
berättar inte om det är förmiddag eller eftermiddag och senare att göra datumberäkningar blir mycket svårt.