Al insertar un SQL DateTime
a la base de datos me sale 2007-02-07 12:00:00.00
java fecha y hora de SQL
pero he hecho el objeto Date
así: 2007-02-07 17:29:46.00
cómo obtener el valor de los segundos en la base de datos. Siempre cambia de nuevo a 12:00:00.00
date.setYear(Integer.valueOf(parsedDate[2].replaceAll(" ", "")) - 1900);
date.setMonth(Integer.valueOf(parsedDate[0].replaceAll(" ", "")));
date.setDate(Integer.valueOf(parsedDate[1].replaceAll(" ", "")));
...
java.sql.Date sqlDate = new java.sql.Date(date.getTime());
¿Debo usar cualquier formateadores?
Una "Fecha" (un número que representa algún punto en el tiempo) es INDEPENDIENTE de su formato (el * mismo * número se puede representar como "2007-02-07" o "2007-07-02" o "2/7/2007 ". También es independiente de su zona horaria (el mismo número puede ser" 2/7/2007 "en Los Ángeles, y" 2/8/2007 "en Londres). Finalmente una" fecha "(por ejemplo," 2/7/2007 ") tiene un valor diferente al de una fecha (por ejemplo," 2/7/2007 09:15 a.m. "). Supongo que probablemente esté usando" fecha ", donde quiere usar" fecha y hora ". – paulsm4
PD: java.util.date significa "fecha" o "fecha y hora". Java.sql.date es solo "fecha". Y para bases de datos como MS Sql Server, "fecha" o "fecha y hora" son DIFERENTES de "marca de hora". http://stackoverflow.com/questions/2305973/java-util-date-vs-java-sql-date – paulsm4
PPS: en MS SQL Server (si eso es lo que está utilizando), una "marca de tiempo" es enfáticamente no es una fecha o fecha y hora: http://www.sqlteam.com/article/ timestamps-vs-datetime-data-types. Si desea una fecha (independientemente de la hora del día), haga que su columna SQL sea "fecha". Si desea la hora del día (independientemente de la fecha del calendario), conviértalo en "hora". Bajo NINGUNA CIRCUNSTANCIA use una "marca de tiempo" de SQL Server para mantener columnas de hora/fecha lógicas. – paulsm4