Conexão JDBC/MySQL

3 respostas
T

Estou com problemas com a conexão JDBC/MySQL. Acredito que tenho instalado o driver corretamente, pois descompactei o zip e incluí o diretório onde foi descompactado no meu classpath, além disso, adicionei o arquivo .jar no jdk/jre/lib/ext. Quando estou debugando a aplicação faço a chamada Class.forname(driver) nenhum problema. Aí na linha seguinte temos:

Connection connection = DriverManager.getConnection(url,username,password);

onde o url = "jdbc:mysql://localhost:3306/VelvetCD"
username = "Toko"
password = “123456”

e VelvetCD é o banco de dados

Quando tento executar esta linha caio direto dentro de um bloco catch. A exception levantada é uma SQLException com uma frase “Unexpected end of input stream” não tenho idéia do que pode ser se puderem me ajude !

3 Respostas

K

Toko, vc está garregando o driver de conexão ao banco tentro do bloco try?
[ Class.forName(“com.mysql.jdbc.Driver”); ]

R

/*

  • BDConexao.java
  • Criado em 5 de setembro de 2004, 20:00
  • @author Rodrigo Reis
    */

// Eu uso o NetBeans 3.6, e la tb coloca o arq nas pasta ext

import java.sql.*;

public class BDConexao {

private static Connection con;

private static Statement stmt;

private static ResultSet resultado;

private static boolean status = false;
/** Creates a new instance of BDConexao */
public BDConexao() throws ClassNotFoundException, SQLException {
    inicializarConexaoBD();
}

public static void inicializarConexaoBD() throws ClassNotFoundException, SQLException {
    status = true;
    Class.forName("org.gjt.mm.mysql.Driver");        
    con = DriverManager.getConnection("jdbc:mysql://localhost/escola", "root", "");
    stmt = con.createStatement();
}

public static void finalizarConexaoBD() {
    try {
        stmt.close();
        con.close();
    }
    catch (Exception e) {
        e.printStackTrace();
    }
}

 
public static Statement getStatement() {
    return stmt;
}

public static boolean getStatus() {
    return status;
}

public static int obterUltimoCodigoGeradoTabela(String nomeTabela) {
    try {
        String csCodigoGerado = "SELECT LAST_INSERT_ID() from " + nomeTabela;
        resultado = stmt.executeQuery(csCodigoGerado);
        resultado.first();
        return (resultado.getInt(1));
    }
    catch (SQLException se) {
        return 0;
    }
}

}

S

Bom, estou tendo um problema quase parecido, então posso dizer que o seu problema não diz respeito com o driver(imagino), pois senão ele iria gerar um erro ClassNotFoundException(se não gerou, o driver esta certo) que por sinal é o erro que eu estou tendo, ja coloquei o mysql-connector-java-3.0.15-ga-bin.jar dentro do C:\j2sdk1.4.2\jre\lib\ext, o que mais eu devo fazer?se puder me dar uma mão, ja que o seu driver vc instalou certo. Só pra ajudar uso win98,eclipse 3.0 mysql-4.0.18-win
valeu!!!

import java.sql.*;
public class BancoTeste {

public static void main(String args[]) {

System.out.println(Testando acesso a banco de dado MySQL\n\n);

Connection conn = null;

String teste = SELECT codigo,nome,sobrenome FROM testeJava;;

try {

Class.forName(org.gjt.mm.mysql.Driver);

conn =

DriverManager.getConnection        (jdbc:mysql://localhost:3306/testeJava”,“root”,"");

System.out.println(A conexão foi um sucesso\n);

Statement stm = conn.createStatement();

ResultSet rs = stm.executeQuery(teste);

while (rs.next()) {

String nome = rs.getString(nome);

String codigo = rs.getString(codigo);

String sobrenome = rs.getString(sobrenome);

System.out.println(

Codigo: 

+ codigo

+ “\nNome: 

+ nome

+ "  Sobrenome: “

+ sobrenome);

System.out.println(”---------------------------------------”);

}

System.out.println(”\n\nConsulta realizada com sucesso!!!\n”);

} catch (ClassNotFoundException e) {

System.out.println(“excessão Classe não encontrada”);

e.printStackTrace();

} catch (SQLException e) {

System.out.println(“SQL Exception… Erro na consulta:”);

e.printStackTrace();

} finally {

try {

conn.close();

System.out.println(”\n\nFechamendo a conexão");

} catch (SQLException erro) {

System.out.println(Erro no fechamento);

erro.printStackTrace();

}

}

}

}
Criado 5 de setembro de 2004
Ultima resposta 22 de set. de 2004
Respostas 3
Participantes 4