Java & MySql

6 respostas
F

Galera, estou com um problema que não consigo resolvê-lo, então recorri ao conhecimento da turma.
Vejam o meu código

import java.sql.*;


public class Ex_01{
 
public static void main(String args[]){
//String url = "jdbc:mysql:apostila_java";

Connection con = null;

try {
	String driver = "com.mysql.jdbc.Driver";
	Class.forName(driver);
}
catch(Exception ex){
	System.out.println("Failed to load MySql Driver.");
	return;
}
/*

try{
	con = DriverManager.getConnection(url);
	Statement select = con.createStatement();
	ResultSet result = select.executeQuery("SELECT * from tab_carros");
	
	if(!result.next()){
		System.out.print("Não Há Dados Na Tabela.");
	}
	
}
catch(Exception ex){
	System.out.println("Deu pau");
	
}
*/

}//Main
    
}//Class

Meu arquivo "Ex_01.class" está em C: e o drive "mysql-connector-java-5.1.5-bin.jar" tbm se encontra em C:, isso para os meus teste.

Ao executar o digito o seguinte:

java -classpath c:\mysql-connector-java-5.1.5-bin.jar Ex_01

Tenho o seguinte erro de retorno: Exception in thread "main" java.lang.NoClassDefFoundError: Ex_01

Espero que a galera possa me ajudar nessa..Desde já sou grato pela atenção

abraços, Nemeth.

6 Respostas

F

Só uma observação galera.

Quando eu executo a class sem o classpath daih ele me retorna o erro que está previsto pelo catch, "Failed to load MySql Driver.

Espero que esclareça um pouco mais, grato, Nemeth.

peczenyj

Teste isso:

cd c:
java -c “c:\mysql-connector-java-5.1.5-bin.jar;.” Ex_01

F

peczenyj:
Teste isso:

cd c:
java -c “c:\mysql-connector-java-5.1.5-bin.jar;.” Ex_01

Antes de tudo obrigado por ter me ajudado.
My God do Céu, num acredito que eu fiz isso, eu não estava na unidade c: tentando executar um arquivo que está na unidade C:. Entretando eu tbm não estava usando o caminho do arquivo .jar entre aspas e nem colocando ;. ao seu final.

Seria possível me explicar o conceito usado ao se adicionar o ;. ? Ou é apenas sintaxe usada para se adicionar APIs ?

F

Pessoal, a etapa de registrar o drive mySql, graças ao amigo peczenyj que me deu uma força, consegui.
Agora estou com problemas referente a conexão propriamente dita, segue o código para análise:

import java.sql.*;


public class Ex_01{
 
public static void main(String args[]){

//Creio que o erro esteja aqui...
String url = "jdbc:mysql://localhost/apostila_java";

Connection con = null;

try {
	String driver = "com.mysql.jdbc.Driver";
	Class.forName(driver).newInstance();
	
}
catch(Exception ex){
	System.out.println("Failed to load MySql Driver.");
	return;
}


try{
	con = DriverManager.getConnection(url);
	Statement select = con.createStatement();
	ResultSet result = select.executeQuery("SELECT * from tab_carros");
	
	if(!result.next()){
		System.out.print("Não Há Dados Na Tabela.");
	}
	else{
		System.out.print("Há Dados Na Tabela.");
	}
	
}
catch(Exception ex){
	System.out.println("Deu pau");
	
}


}//Main
    
}//Class

Em relação ao meu Banco de Dados, a seguir uma imagem para esclarecimento.
[img]http://i245.photobucket.com/albums/gg47/fenemeth/bd_exemplo.jpg[/img]

Não sei se é possível perceber pela imagem, mas não há usuário nem senha. Apenas aperto enter e estou apto a manipular tabelas etcs...
Aguardo respostas, grato, Nemeth

lanrel
Veja um codigo de conexao...

/*
 * Conexao.java
 *
 * Criado em 27 de Dezembro de 2007, 16:34
 *
 */

/**
 *
 * @author Nilton Paixão
 */


import java.sql.*;

public class Conexao {

    private Connection con;
    
    /** Creates a new instance of Conexao */
    public void Conexao(){
      
      try{ 
          
      Class.forName("com.mysql.jdbc.Driver");
      con=DriverManager.getConnection("jdbc:mysql://192.168.x.x/meubanco", "usuario", "");
      }
      catch(Exception e){
            System.out.println("Falha na Conexão !!!");
            e.printStackTrace();
      }
    }
    
    public Connection getConexao(){
        return con;
    }
    
    public void fechar(ResultSet rs){
      if (rs !=null){
          try{
              rs.close();
          }
          catch(Exception e){}
      }
    }
    
    public void fechar(java.sql.Statement stmt){
      if (stmt !=null){
          try{
              stmt.close();
          }
          catch(Exception e){}
          
      }
    }
    
    public void fecharConexao(){
        if (con !=null){
          try{
              con.close();
          }
          catch(Exception e){}
        }
    }
}

No seu caso você criou uma conta anonima no MySQL… na instalação…
utilize os commandos para adicionar usuários e senhas…
tente utilizar o MySQLAdministrator…
Nao esqueça de criar o usuario root e + um usuario para o banco em questao… No codigo de conexao deve-se digitar usuario e senha… OK!

F
lanrel:
Veja um codigo de conexao...

/*
 * Conexao.java
 *
 * Criado em 27 de Dezembro de 2007, 16:34
 *
 */

/**
 *
 * @author Nilton Paixão
 */


import java.sql.*;

public class Conexao {

    private Connection con;
    
    /** Creates a new instance of Conexao */
    public void Conexao(){
      
      try{ 
          
      Class.forName("com.mysql.jdbc.Driver");
      con=DriverManager.getConnection("jdbc:mysql://192.168.x.x/meubanco", "usuario", "");
      }
      catch(Exception e){
            System.out.println("Falha na Conexão !!!");
            e.printStackTrace();
      }
    }
    
    public Connection getConexao(){
        return con;
    }
    
    public void fechar(ResultSet rs){
      if (rs !=null){
          try{
              rs.close();
          }
          catch(Exception e){}
      }
    }
    
    public void fechar(java.sql.Statement stmt){
      if (stmt !=null){
          try{
              stmt.close();
          }
          catch(Exception e){}
          
      }
    }
    
    public void fecharConexao(){
        if (con !=null){
          try{
              con.close();
          }
          catch(Exception e){}
        }
    }
}
----------------------

No seu caso você criou uma conta anonima no MySQL... na instalação...
utilize os commandos para adicionar usuários e senhas...
tente utilizar o MySQLAdministrator...
Nao esqueça de criar o usuario root e + um usuario para o banco em questao... No codigo de conexao deve-se digitar usuario e senha... OK!

Ohhh certinho kra...Depois de postado aqui tentei essa opção, de criar um usuário e uma senha, daih consegui a conexão. Agradeço pela força lanrel.

Abraço galera. Qualquer coisa posto novamente.

Criado 30 de janeiro de 2008
Ultima resposta 31 de jan. de 2008
Respostas 6
Participantes 3