Looks like you are using an incorrect format for the date time/date time stamp.
https://dev.mysql.com/doc/refman/5.7/en/datetime.html wrote:The DATETIME type is used for values that contain both date and time parts. MySQL retrieves and displays DATETIME values in 'YYYY-MM-DD HH:MM:SS' format.
The supported range is '1000-01-01 00:00:00' to '9999-12-31 23:59:59'.
Here's the bits needed to get "now" into a JDBC date-time field:
No need to mess around with formatting timestamps as Strings. Also, if your column type is DATETIME then you need setTimestamp(); setDate() will only set the date part of the column. (The designers of Java were not quite at the top of their game when they used "Date" as the name of a class to encapsulate date and time information, so generations of beginners have been confused.)