Aunque una entrada antigua, la respuesta es simple y depende de sus necesidades - según sus necesidades utilizar el tipo de datos DATETIME y utilizar los siguientes
java.util.Date date = new Date();
pst.setTimestamp(columIndex, new java.sql.Timestamp(date.getTime()).getTime());
Veamos el razonamiento tanto de la base de datos y jdbc side.
Comience desde el tipo de datos en la base de datos y elija el apropiado. El que mejor se adapte a su caso es DATETIME como desea la fecha y la hora/min/seg. El tipo DATETIME se usa para almacenar el tiempo del reloj de pared, mientras que TIMESTAMP es para un punto fijo en el tiempo (algunos milisegundos después de la época). También existe una diferencia en la forma en que ambos se almacenan internamente en MySQL.
Ahora Cuando se llega a la parte JDBC que tienen métodos de la API de Fecha (sólo parte de fecha), Marca de tiempo (fecha y hora) y la hora (única vez). Eso es todo lo que el JDBC tiene para ofrecer. Entonces, ahora, la API que se adapta a sus necesidades es setTimestamp
¿Se puede pegar el código que inserta la fecha? ¿Qué tipo de columna usaste en la base de datos? – pablochan
java.util.Date myDate = new java.util.Date();
java.sql.Date sqlDate = new java.sql.Date (myDate.getTime());
PreparedStatement PStmt = con.prepareStatement (consulta SQL);
PStmt.setDate (1, sqlDate); – Narayan
¿Cuál es el tipo de columna en MySQL? – dbf