Ver Mensaje Individual
  #10 (permalink)  
Antiguo 19/11/2013, 18:34
Link_OOT
 
Fecha de Ingreso: noviembre-2008
Mensajes: 47
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Actualización muy lenta MySQL JPA

He ejecutado la 2º consulta, la he modificado para que se crucen los datos con los DNIs de la tabla clientes y ha tardado 0,118 seg según HeidiSQL

También he probado lo de poner las namedQueries y sigue tardando mas o menos lo mismo.

Yendo a la desesperada he hecho la conexión a pelo y lo hace de forma inmediata... pero es una chapuza... no es plan de dejarlo así

Código:
try {
					long tiempo1=System.currentTimeMillis();
					Connection conexion = DriverManager.getConnection("jdbc:mysql://localhost/gestiondefinitivo", "user", "password");
					PreparedStatement stmt2 = conexion.prepareStatement("UPDATE Registros reg SET "
				    		+ "reg.comentarios='"+registroNuevo.getComentarios()+"', reg.IDEstado='"+registroNuevo.getIDEstado()+"', reg.nombreEstado='"+registroNuevo.getNombreEstado()+"', reg.operadorMovil='"+registroNuevo.getOperadorMovil()+"',"
				    		+ " reg.NLineasMovil='"+registroNuevo.getNLineasMovil()+"', reg.permanenciaMovil='"+registroNuevo.getPermanenciaMovil()+"', reg.operadorFijo='"+ registroNuevo.getOperadorFijo()+"', reg.permanenciaFijo='"+registroNuevo.getPermanenciaFijo()+"',"
				    		+ " reg.NLineasFijo='"+ registroNuevo.getNLineasFijo()+"', reg.concertador='"+registroNuevo.getConcertador()+"', reg.origen='"+registroNuevo.getOrigen()+"', reg.fechaModificacion='"+Calendar.getInstance().get(Calendar.DATE)+ "-"+ Integer.toString((Calendar.getInstance().get(Calendar.MONTH)) + 1)+ "-"+ Calendar.getInstance().get(Calendar.YEAR)+"' WHERE reg.IDRegistro="+(resultado.get(0)).getIDRegistro());
					int result=stmt2.executeUpdate();
					stmt2.close();
					conexion.close();
					System.out.println("Tiempo: " +Long.toString(System.currentTimeMillis()-tiempo1));
				} catch (SQLException e) {
					e.printStackTrace();
				}
Además, no se como se comportara ese código cuando haya concurrencia (nunca va a estar sobre el mismo cliente o registro, pero si se pueden estar editando 10 registros a la vez)

Saludos.