JDBC MySQL falla a veces al realizar queries

Iniciado por dPix, 16 Agosto 2010, 16:44 PM

0 Miembros y 1 Visitante están viendo este tema.

dPix

Hola,

Estoy usando una conexión JDBC gracias al paquete mysql-connector-java-5.1.13. Lo que pasa es que A VECES  :-\ , al hacer una petición de query (tratando de rellenar un jComboBox con información devuelta por el statement), me printa mediante un println "null" y no me rellena el jComboBox. Ocurre tanto en ejecución desde eclipse como ejecutando el .jar compilado.  :¬¬

Sucede en varios ordenadores (de altas prestaciones) lo mismo y desde varias redes con un gran ancho de banda. Es extraño y destacable que no suceda este problema al rellenar una jTable que también usa queries.

¿Alguna idea o caso similar que me pueda ayudar?

Un saludo,

dPix  ;D

egyware

Realmente no se.
¿Has probado que tu consulta funciona bien en un cliente MySQL?
¿Esta bien cargado el Driver de Java MySQL?
¿Te conectaste bien al servidor?

Revisa esta pagina talvez te podra servir.
http://casidiablo.net/ejemplo-basico-de-programacion-con-jdbc-y-mysql/


Saludos

dPix

Hola egyware,

Sí, he probado la consulta mediante su ejecución en phpmyadmin y devuelve lo que tiene que devolver.

El Driver de Java MySQL está bien cargado, porque, si no fuese así devolvería una excepción dicha clase.  :-\

Sí, estoy completamente seguro de que conecta corréctamente a la base de datos ya que puedo hacer peticiones para rellenar la tabla que comenté y otro tipo de consultas que sí funcionan.  :¬¬

Gracias por el link, aunque no me ha ayudado  :xD

Un saludo

Debci

Cita de: dPix en 17 Agosto 2010, 10:01 AM
Hola egyware,

Sí, he probado la consulta mediante su ejecución en phpmyadmin y devuelve lo que tiene que devolver.

El Driver de Java MySQL está bien cargado, porque, si no fuese así devolvería una excepción dicha clase.  :-\

Sí, estoy completamente seguro de que conecta corréctamente a la base de datos ya que puedo hacer peticiones para rellenar la tabla que comenté y otro tipo de consultas que sí funcionan.  :¬¬

Gracias por el link, aunque no me ha ayudado  :xD

Un saludo
Entonces no me lo explico :S

Saludos

[D4N93R]

En estos casos es mejor postear esa parte del code. A veces los errores son indectectables por uno mismo porque te acostumbras a esas lineas de código y no lo puedes ver.. Pero pasa xD

Saludos!

dPix

Cita de: Debci en 17 Agosto 2010, 12:44 PM
Cita de: dPix en 17 Agosto 2010, 10:01 AM
Hola egyware,

Sí, he probado la consulta mediante su ejecución en phpmyadmin y devuelve lo que tiene que devolver.

El Driver de Java MySQL está bien cargado, porque, si no fuese así devolvería una excepción dicha clase.  :-\

Sí, estoy completamente seguro de que conecta corréctamente a la base de datos ya que puedo hacer peticiones para rellenar la tabla que comenté y otro tipo de consultas que sí funcionan.  :¬¬

Gracias por el link, aunque no me ha ayudado  :xD

Un saludo
Entonces no me lo explico :S

Saludos

Yo tampoco  >:(

Cita de: [D4N93R] en 17 Agosto 2010, 14:12 PM
En estos casos es mejor postear esa parte del code. A veces los errores son indectectables por uno mismo porque te acostumbras a esas lineas de código y no lo puedes ver.. Pero pasa xD

Saludos!

Vale, ya que creo que es lógico trás analizar el problema que no es por culpa del código de fuente, amplio más información por si a alguien le suena y me puede ayudar.

Aquí una captura de la parte donde tengo el método que uso para conectar y que me informa mediante System.out.println de algunos datos:


Aquí una captura del outline de la consola cuando el programa conecta y además FUNCIONA:


Aquí una captura del outline de la consola cuando el programa conecta y NO FUNCIONA:


Un saludo
:D

[D4N93R]

No conozco mucho mysql, pero hay alguna forma de hacerle un profiler? Es decir, ver las conexiones entrantes y los queries de los clientes?

Posiblemente esa sea la vía..

Saludos!

dPix

Solucionado  ;D ;D

Por si a alguien le pasa lo mismo, lo que he hecho es: en vez de hacer la petición nada más que carga el componente deseado que alberga la información, esperar a que se carga por completo la aplicación y la conexión a la DB y después llamar a un método que contiene las operaciones deseadas.  ::)

Parecía ser que se sobrecargaba la aplicación y por lo que veo el null que se printa por ahí en medio tiene pinta de ser por culpa de posible uso de hilos paralelos por parte de Eclipse.  :-\

Un saludo  ;-)