Sigueme en Twitter
«Anterior | Siguiente»

Problemas de conexión entre Java y MySQL

9/02/2008

Dato cultural que me traia loco un buen rato.

Si estas usando el driver de JDBC para conectarte a una base de datos MySQL desde Java y estas teniendo esta excepción al simplemente iniciar la conexión:

Exception: Error during query: Unexpected Exception: java.io.CharConversionException message given: null

Pueden ser dos cosas:

  • Estas usando java 1.4, si es asi, solo actualiza a java 1.5 y problema solucionado.
  • No tienes seteado utf8 en la configuración de MySQL, modifica tu archivo my.cnf (/etc/mysql/) y agrega los siguientes parametros, reinicia MySQL después de eso y listo.

[client]
default-character-set=utf8

[mysqld]
default-character-set=utf8


Hay 5 comentarios:

  1. 16/02/2008fuensa82 dice:

    He estado buscando en un montón de foros y no había encontrado nada, como dicen en algunos al final era una tontería (lo digo con ironía).
    Muchas gracias por tu solución, se nota que te has documentado mucho. Acabas de ganar un lector.

  2. 16/02/2008pablasso dice:

    de nada para eso estamos :)

  3. 1/05/2008Juan dice:

    A mi me ocurre lo mismo pero no creo que la solución sea la misma, ya que esto me ocurre desde que he reinstalado ubuntu 8.04.
    El servidor mysql está en otra máquina y si antes funcionaba ahora debería funcionar igual sin modificar ningún parámetro de configuración de mysql, ¿no?.

    ¿cual puede ser la solución?…o al menos el problema.

  4. 1/05/2008pablasso dice:

    Como MySQL esta igual, diria que ‘algo’ cambio al actualizarse Java, talvez antes Java mismo obligaba que la conexion cliente fuera UTF8, si se perdio esa configuracion se toma la de default de MySQL. Si tienes acceso a la configuracion de MySQL trata de agregar el encoding para UTF8 o buscar como se hace desde Java.

    De cualquier manera solo estoy adivinando, yo no he tenido ese problema con la actualizacion. Suerte.

  5. 17/03/2009Ana dice:

    como conecatar java en MYSQL

Escribe tu comentario:

¿Escribiste código? [+]

Para hacerlo más legible puedes utilizar la etiqueta <pre>.
Ejemplo: <pre lang="php" line="1"> código </pre>
  • El atributo lang indica el lenguaje de programación.
  • El atributo line indica desde donde comienza la numeración.


  Los mas frikis pueden suscribirse a los comentarios por RSS.