Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/03/2015, 09:15
Avatar de oshho
oshho
 
Fecha de Ingreso: marzo-2015
Mensajes: 40
Antigüedad: 9 años, 1 mes
Puntos: 0
Obtener hora y fecha desde Base de datos

Hola a todos, recurro nuevamente a ustedes ya que tengo un problema bastante frustrante, resulta que tengo en una base de datos un campo de tipo "Datetime" y bueno, estoy intentando tomar el valor de varias filas y almacenarlas en una lista. he intentado con los metodos obsoletos como el "gethour", "getsecond" etc y me lanza error "null", luego intente con SimpleDateFormat utilizando el siguiente codigo.

Código Java:
Ver original
  1. DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");

La fecha me la devuelve correctamente, pero las horas, minutos y segundos me los devuelve como 00:00:00

Espero que puedan ayudarme, lo único que se me ocurre es que no se este almacenando en el ResultSet la fecha+hora, pero mucho menos sabría arreglar eso hahaha, bueno espero que puedan ayudarme de antemano muchas gracias.

Les dejo una imagen de el valor en la base de datos y del resultado que obtengo.


ahh y el codigo del metodo con la query.
Código Java:
Ver original
  1. public static Transaction buscarMetricasLentas(int fechaInicio, int fechaFin, int tranID){
  2.         int contador = 0;
  3.         Transaction transaccion = null;
  4.         DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
  5.         Connection conexion = Conexion.getConexion();
  6.         try {
  7.         String query = "Use SyntheticMonitoring "
  8.                 + "SELECT TransactionID, StartTimeUTC, StartTime, TotalGood, TotalBad, TotalUnavailable "
  9.                 + "FROM TransactionDetails "
  10.                 + "WHERE StartTimeUTC >= ? and StartTimeUTC <=? and TransactionID = ? "
  11.                 + "and not LocationID = 44 and TotalBad = 1";
  12.        PreparedStatement buscar = conexion.prepareStatement(query);
  13.        buscar.setInt(1, fechaInicio);
  14.        buscar.setInt(2, fechaFin);
  15.        buscar.setInt(3, tranID);
  16.        ResultSet rs = buscar.executeQuery();
  17.        while(rs.next()){
  18.            contador = contador+1;
  19.            transaccion = new Transaction(rs.getInt("TransactionID"), rs.getInt("StartTimeUTC"),
  20.            rs.getDate("StartTime"), rs.getInt("TotalGood"), rs.getInt("TotalGood"), rs.getInt("TotalUnavailable"));
  21.            System.out.println(dateFormat.format(transaccion.getStartTime()));
  22.            System.out.println();
  23.        }
  24.        System.out.println("Numero de filas: "+contador);
  25.        buscar.close();
  26.        conexion.close();
  27.        
  28.         } catch (Exception e) {
  29.             System.err.println("Error :( ");
  30.             System.err.println(e.getMessage());
  31.         }
  32.         return transaccion;
  33.        
  34.     }
  35.    
  36.         public static void main (String[] args) {
  37.         try {
  38.            
  39.             buscarMetricasLentas(1407699422, 1407706023, 226);
  40.            
  41.         } catch (Exception e) {
  42.             System.err.println("Error :( ");
  43.             System.err.println(e.getMessage());
  44.         }
  45.     }