Guardar Fecha y Hora en Oracle con Java

Entrada corta.

Estuve casi 2 horas peleando con Oracle para que me guardara una fecha con la hora respectiva. Pero siempre me guardaba la fecha, sin horas D:

Buscando por medio mundo, llegué a la solución. En vez de guardar un Date, guardar un TimeStamp.

Y el código sería así:

parametros.add(new java.sql.Timestamp(new java.util.Date().getTime()));

Donde parametros es un List<Object> usado por el HandlerOracle.

Y el HandlerOracle ahora tiene lo siguiente (última sentencia):

private PreparedStatement getStatement(String sql, List<Object> parametros) throws SQLException, Exception{
    if(this.conexion.isClosed()){ this.conexion = this.Conectar(); }
    PreparedStatement pstmt = conexion.prepareStatement(sql);
    int count = 1;
    for(Object p : parametros){
        if(p.getClass().equals(String.class)){
            pstmt.setString(count, (String)p);
        }else if(p.getClass().equals(Integer.class)){
            pstmt.setInt(count, (Integer)p);
        }else if(p.getClass().equals(Boolean.class)){
            pstmt.setBoolean(count, (Boolean)p);
        }else if (p.getClass().equals(Date.class)){
            pstmt.setDate(count, (Date) p);
        }else if(p.getClass().equals(java.sql.Timestamp.class)){
            pstmt.setTimestamp(count, (java.sql.Timestamp) p);
        }
        count++;
    }
    return pstmt;
}

Y eso es todo🙂

Acerca de MaritoCares

Ingeniero Informático. Con tendencias a la programación en [C#, VB].NET, Java(Web principalmente...), PHP, JavaScript, algo mínimo de [ruby, python], y el clásico C.
Esta entrada fue publicada en Java, Oracle, Tips. Guarda el enlace permanente.

Una respuesta a Guardar Fecha y Hora en Oracle con Java

  1. Obux dijo:

    Las fechas siempre son un dolor de cabeza en cualquier lenguaje…🙂

  2. Anónimo dijo:

    Gracias por compartirlo!

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s