无法创建与数据库服务器的连接 - Eclipse MySQL错误

时间:2014-06-17 04:13:07

标签: java android mysql eclipse

你可以帮帮我吗?我已经完成了jdbc构建路径,并且存在我的数据库保存时间。

我的班级:

    package br.com.savetime;

    import java.sql.*;

    public class CriarConexao {

    private static Connection con = null;

    public static Connection abrirBanco(){
        Connection con;
        try{
            Class.forName("com.mysql.jdbc.Driver");  
            con = DriverManager.getConnection("jdbc:mysql://localhost:3306/savetime", "root", "root");
            System.out.println("conectando");
            return con;
        }
        catch(ClassNotFoundException cnfe){
            System.out.println("driver nao encontrado: " + cnfe.getMessage());
            return null;
        }
        catch(SQLException sql){
            System.out.println("SQLException: " + sql.getMessage());
            System.out.println("SQLState: " + sql.getSQLState());
            System.out.println("Erro: " + sql.getErrorCode());
            System.out.println("StackTrace: " + sql.getStackTrace());
            return null;
        }
        catch(Exception e){
            System.out.println(e.getMessage());
            return null;
        }
    }

    public static void fecharBDcon(){
        try{
            con.close();
        }
        catch(Exception e){
            System.out.println("erro ao fechar o banco" + e.getMessage());
        }
    }

}

和我的错误:

06-17 03:55:07.139: I/System.out(1367): SQLException: Could not create connection to database server.

06-17 03:55:07.139: I/System.out(1367): SQLState: 08001

06-17 03:55:07.139: I/System.out(1367): Erro: 0

06-17 03:55:07.149: I/System.out(1367): StackTrace: [Ljava.lang.StackTraceElement;@41bc1af0

2 个答案:

答案 0 :(得分:1)

您的代码工作正常,只需在classpath中提供mysql-connector.jar。我们可以找到它here以及我尝试过的代码:

import java.sql.*;

public class ConnectionTest {

private static Connection con = null;

public static Connection abrirBanco(){
    Connection con;
    try{
        Class.forName("com.mysql.jdbc.Driver");
        con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "welcome");
        System.out.println("conectando");
        return con;
    }
    catch(ClassNotFoundException cnfe){
        System.out.println("driver nao encontrado: " + cnfe.getMessage());
        return null;
    }
    catch(SQLException sql){
        System.out.println("SQLException: " + sql.getMessage());
        System.out.println("SQLState: " + sql.getSQLState());
        System.out.println("Erro: " + sql.getErrorCode());
        System.out.println("StackTrace: " + sql.getStackTrace());
        return null;
    }
    catch(Exception e){
        System.out.println(e.getMessage());
        return null;
    }
}

public static void fecharBDcon(){
    try{
        con.close();
    }
    catch(Exception e){
        System.out.println("erro ao fechar o banco" + e.getMessage());
    }
}
public static void main(String arr[])
{
    System.out.println("Making connection..");
    Connection connection = ConnectionTest.abrirBanco();
    System.out.println("Connection made...");
}
}

答案 1 :(得分:0)

这只是mysql连接器jar文件的不匹配。只需使用更高版本更新jar文件,或者如果您使用的是maven,则更新您的依赖项。我用6.0.6版本更新了pom.xml中的依赖项,它可以工作。