Problema conexion con Sql
Publicado por Pablo Gómez Sanmartín (3 intervenciones) el 06/08/2008 17:44:49
Hola , tengo un problema con la conexion de un programa java con la BD Mysql.Tengo el siguiente codigo y cuando lo ejecuto en el main la llamada al metodo bd.AnadirAlmacen("nuevo") me salta el siguiente error :
------------------------------------------------------------------------------
java.sql.SQLException: Communication link failure: Bad handshake
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:659)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:1562)
Excepcion capturada de SQLjava.sql.SQLException: Communication link failure: Bad handshake
at com.mysql.jdbc.Connection.<init>(Connection.java:491)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:207)
at javaapplication6.BaseDatos.realizarInsDelUpdate(BaseDatos.java:31)
at javaapplication6.BaseDatos.AnadirAlmacén(BaseDatos.java:65)
at javaapplication6.Main.main(Main.java:21)
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
---------------------------------------------------------------------------
y no me pasa de la linea
Connection micon=DriverManager.getConnection("jdbc:mysql://localhost/gestion");
ya no se que mas hacer haber si alguien me puede ayudar tengo el mysql 5 y me baje el conector C:Program FilesJavajdk1.6.0_06jrelibextmysql-connector-java-3.0.8-stable-bin.jar
lo tengo en el classPath.
un saludo y gracias por adelantado
-----------------------------------------------------------------------------
import java.sql.*;
import java.sql.DriverManager;
public class BaseDatos {
public BaseDatos(){
}
protected void error(String cadError) {
System.out.println(cadError);
System.exit(1);
}
/**
*Metodo que utizamos para el manejo de la BD.
*
*@param le pasamos como parámetro la consulta Sql a realizar.
*/
public boolean realizarInsDelUpdate(String consult){
int res=0;
String login="root";
String pass="peibol47";
try{
System.out.println("traceando1 por aki pasamos bien");
//intenta cargar el conrolador JDBC de MySQL
//Class.forName("org.gjt.mm.mysql.Driver");
Class.forName("com.mysql.jdbc.Driver");
//establece conexion con la base de datos
Connection micon=DriverManager.getConnection("jdbc:mysql://localhost/gestion");
//se crea el objeto Statement para ralizar la peticion
System.out.println("Aqui no llegamos");
Statement sentencia=micon.createStatement();
//se realiza la peticion y se recoge el resultado que va ser un int que guarda el nº de filas afectadas
res=sentencia.executeUpdate(consult);
System.out.println(res);
sentencia.close();
} catch (ClassNotFoundException e){
error("Controlador Jdbc no encontrado"+ e);
}
catch( SQLException e){
e.printStackTrace();
error("Excepcion capturada de SQL" +e);
}
if (res >0)
return true;
else return false;
}
public boolean realizarSelect(String consult){
return true;
}
/** Metodo que utizamos para añadir un nuevo Almacen a la BD.
*
* @param nomAlmacen es el nombre que va a recibir el Almacen añadido.
* @return un booleano para saber si se realizó correctamente la operación.
*/
public boolean AnadirAlmacén(String nomAlmacen){
String consulta ="INSERT INTO almacen (Nombre) VALUES ('"+nomAlmacen+"')";
return realizarInsDelUpdate(consulta);
}
------------------------------------------------------------------------------
java.sql.SQLException: Communication link failure: Bad handshake
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:659)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:1562)
Excepcion capturada de SQLjava.sql.SQLException: Communication link failure: Bad handshake
at com.mysql.jdbc.Connection.<init>(Connection.java:491)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:207)
at javaapplication6.BaseDatos.realizarInsDelUpdate(BaseDatos.java:31)
at javaapplication6.BaseDatos.AnadirAlmacén(BaseDatos.java:65)
at javaapplication6.Main.main(Main.java:21)
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
---------------------------------------------------------------------------
y no me pasa de la linea
Connection micon=DriverManager.getConnection("jdbc:mysql://localhost/gestion");
ya no se que mas hacer haber si alguien me puede ayudar tengo el mysql 5 y me baje el conector C:Program FilesJavajdk1.6.0_06jrelibextmysql-connector-java-3.0.8-stable-bin.jar
lo tengo en el classPath.
un saludo y gracias por adelantado
-----------------------------------------------------------------------------
import java.sql.*;
import java.sql.DriverManager;
public class BaseDatos {
public BaseDatos(){
}
protected void error(String cadError) {
System.out.println(cadError);
System.exit(1);
}
/**
*Metodo que utizamos para el manejo de la BD.
*
*@param le pasamos como parámetro la consulta Sql a realizar.
*/
public boolean realizarInsDelUpdate(String consult){
int res=0;
String login="root";
String pass="peibol47";
try{
System.out.println("traceando1 por aki pasamos bien");
//intenta cargar el conrolador JDBC de MySQL
//Class.forName("org.gjt.mm.mysql.Driver");
Class.forName("com.mysql.jdbc.Driver");
//establece conexion con la base de datos
Connection micon=DriverManager.getConnection("jdbc:mysql://localhost/gestion");
//se crea el objeto Statement para ralizar la peticion
System.out.println("Aqui no llegamos");
Statement sentencia=micon.createStatement();
//se realiza la peticion y se recoge el resultado que va ser un int que guarda el nº de filas afectadas
res=sentencia.executeUpdate(consult);
System.out.println(res);
sentencia.close();
} catch (ClassNotFoundException e){
error("Controlador Jdbc no encontrado"+ e);
}
catch( SQLException e){
e.printStackTrace();
error("Excepcion capturada de SQL" +e);
}
if (res >0)
return true;
else return false;
}
public boolean realizarSelect(String consult){
return true;
}
/** Metodo que utizamos para añadir un nuevo Almacen a la BD.
*
* @param nomAlmacen es el nombre que va a recibir el Almacen añadido.
* @return un booleano para saber si se realizó correctamente la operación.
*/
public boolean AnadirAlmacén(String nomAlmacen){
String consulta ="INSERT INTO almacen (Nombre) VALUES ('"+nomAlmacen+"')";
return realizarInsDelUpdate(consulta);
}
Valora esta pregunta


0