Seguinte, pessoal depois de muito tentar conexões com aquele maldito driver, finalmente consegui utilizar, porém, a maquina que eu desenvolvo, não é o servidor do banco MySql, estou rodando no linux Ubuntu, com o NetBeans IDE 5.5, e o erro que aparece é o que segue abaixo
saturno é o nome do servidor interno, é uma aplicação interna para meu serviço, o codigo que eu estou usando é o que segue abaixo:
importjava.sql.*;publicclassBancoTeste{publicstaticvoidmain(Stringargs[]){System.out.println("Testando acesso a banco de dado MySQL\n\n");Connectionconn=null;try{Class.forName("com.mysql.jdbc.Driver");conn=DriverManager.getConnection("jdbc:mysql://saturno/laboratorio?user=root");System.out.println("Conexão com sucesso");}catch(ClassNotFoundExceptione){System.out.println("excessão Classe não encontrada");e.printStackTrace();}catch(SQLExceptione){// se houve algum erro, uma exceção é gerada para informar o erroe.printStackTrace();//vejamos que erro foi gerado e quem o gerou}}
E ele pega a SQLException, estou iniciando nesse projeto MySql e JAVA, e estou enfrentando problemas, alguem ae pode me ajudar?
e foi configurado com sucesso, conexão tah funcionando, valeu pela ajuda pessoal, podem fecha o topico.
att
Felagund
Estou com um problema de sintaxe do SQL agora, criei um metodo para busca
publicResultSetSelectSearch(Stringtable,Stringcoluna,Stringbusca,Connectionc){ResultSetrs=null;try{Statements=c.createStatement();rs=s.executeQuery("Select * FROM "+table+" WHERE "+coluna+" LIKE %"+busca+"%");}catch(Exceptione){System.err.println("Cannot connect to server "+e);}returnrs;}
porém infelizmente ele naum reconhece a String busca, aplicanto a busca sem a variavel ele procede normalmente, porém pelo software gera um erro
O que eu digitei nesse busca foi a palavra corel.
nbluis
faltas as aspas
"Select * FROM "+table+" WHERE "+coluna+" LIKE '%"+busca+"%'"
erickcellani
recomendo naum usar concatecação!!!
use ‘?’ no lugar da concatenação… e depois coloca um Statement setano os paramentros!
Felagund
Deu certo, brigadao olha a falta que faz um maldito ', aahuuhahuaa, blz agora funciono bem, agradeço a atanção
obrigado
Marky.Vasconcelos
Use PreparedStatement pra evitar um SQL Injection
e imagina se vc for procurar algo com o nome de joana d’arc a aspa vai quebrar seu código
Vi isso na apostila FJ 21 da Caelum
I
Inacio_Alves
OK, li em vários locais (inclusive aqui) como fazer para conectar java+MySql.
Baixei o driver mysql-connector-java-5.1.5-bin do site da MySql e instalei na aba RunTime do netbeans e apareceu lá na guia banco de dados-drivers algo do tipo MySql …
Até aí tudo bem, mas quando escrevo o código de conexão ele não encontra o driver com.mysql.jdbc.Driver
//1: Importar o packageimportjava.sql.*;classmysqlapp{publicstaticvoidmain(String[]args){System.out.println("JDBC-MySQL Conexão");try{//2: Registrar o driver JDBCSystem.out.println("2: Registrando o driver JDBC?");Class.forName("com.mysql.jdbc.Driver").newInstance();//3: Estabelecer uma conexãoSystem.out.println("3: Conectando ao banco de dados?");StringjdbcUrl="jdbc:mysql://localhost:3306/estoque";Stringusuario="root";Stringsenha="";Connectionconn=DriverManager.getConnection(jdbcUrl,usuario,senha);
O que pode está dando errado, pois o erro já ocorre na linha 13 do trecho de código acima e sem o newinstance também dá erro.
PS. O banco está no pc local e aberto.
rubinelli
Você acrescentou o jar no seu build path?
I
Inacio_Alves
Eu consegui conectar através do netbeans colocando o .jar nas bibliotecas do projeto. Agora estou procurando como faço para adicionar o .jar no CLASSPATH. Muito obrigado pela dica.
Agora, mudando de assunto, li a apostila da Caelum sobre PreparedeStatement e é realmente muito interessante, consegui por grande parte do código de tratamento de sql fora da classe do formulário, o que falta lá é uma maneira de navegar nos registros, tipo: por botões primeiro,anterior,… e acessar os registros de acordo com o clique nestes botões. Consegui inserir, editar e excluir dados, mas não consigo navegar. alguém sabe onde encontro isto?