Bom galera sou iniciante ,estou tentando conectar meu bd ,segui esse exemplo num tutorial e gera o seguinte erro:
Não foi possível conectar com o banco de dados.
se alguém puder me ajudar…wlu
publicstaticvoidmain(String[]args){java.sql.Connectionconnection=null;try{StringdriverName="org.gjt.mm.mysql.Driver";Class.forName(driverName);Stringservidor="localhost";StringnomeDoBanco="conector";Stringurl="jdbc:mysql://"+servidor+"/"+nomeDoBanco;Stringlogin="seu login";Stringsenha="sua senha";connection=DriverManager.getConnection(url,login,senha);}catch(ClassNotFoundExceptione){System.out.println("O driver especificado não foi encontrado");}catch(SQLExceptione){System.out.println("Não foi possível conectar com o banco de dados");}}
Ops ja resolvi o problema esqueci de colocar o meu login e a senha no código, coisa de princiante…
se alguém souber algum tutorial que mostre desde como inserir , alterar, consultar…
agradeço desde já…
ivandasilva
Donizete, dá uma olhada neste material.
Abraços
Donizeti
bom galera agora to com um outro problema tentei enviar requisições SQL para o meu Banco de Dados , aí ele gera o erro dinovo:
“Não foi possível conectar com o banco de dados”.
Por favor me ajudem!!!
publicstaticvoidmain(String[]args){java.sql.Connectionconnection=null;try{StringdriverName="org.gjt.mm.mysql.Driver";Class.forName(driverName);Stringservidor="localhost";StringnomeDoBanco="conector";Stringurl="jdbc:mysql://"+servidor+"/"+nomeDoBanco;Stringlogin="****";Stringsenha="****";connection=DriverManager.getConnection(url,login,senha);//Criando um objeto Statement para enviar requisições SQL para o Banco de Dados Statementstmt=(Statement)connection.createStatement();ResultSetrset=stmt.executeQuery("insert into teste ('id','nome','ano'"+"values('1','Donizeti','1998')");}catch(ClassNotFoundExceptione){System.out.println("O driver especificado não foi encontrado");}catch(SQLExceptione){System.out.println("Não foi possível conectar com o banco de dados");}}
joede.fadel
Donizeti:
bom galera agora to com um outro problema tentei enviar requisições SQL para o meu Banco de Dados , aí ele gera o erro dinovo:
"Não foi possível conectar com o banco de dados".
Por favor me ajudem!!!!!!!!!!
publicstaticvoidmain(String[]args){java.sql.Connectionconnection=null;try{StringdriverName="org.gjt.mm.mysql.Driver";Class.forName(driverName);Stringservidor="localhost";StringnomeDoBanco="conector";Stringurl="jdbc:mysql://"+servidor+"/"+nomeDoBanco;Stringlogin="****";Stringsenha="****";connection=DriverManager.getConnection(url,login,senha);//Criando um objeto Statement para enviar requisições SQL para o Banco de Dados Statementstmt=(Statement)connection.createStatement();ResultSetrset=stmt.executeQuery("insert into teste ('id','nome','ano'"+"values('1','Donizeti','1998')");}catch(ClassNotFoundExceptione){System.out.println("O driver especificado não foi encontrado");}catch(SQLExceptione){System.out.println("Não foi possível conectar com o banco de dados");}}
faltou colocar a porta para conexão com banco de dados
Bom ainda não deu certo, coloquei a porta de conexão , mas mesmo assim ela continua dando esse erro…
Por favor me ajudem…
wleu
joede.fadel
testei a tua classe de conexão aqui e ela funcional normalmente pode ser o seu login e senha que estão errados, a porta do banco você tem identificar em qual linha está dando esse erro faça o debug do seu projeto para identificar o erro
Donizeti
Vixe joede me dá uma dica ai cara ,de como fazer isso…
perdoe a minha ingenuidade no assunto mais eu to começando a programar agora,to tentando fazer isso , mais tah difícil se puder me ajudar agradeço… flw abrçs
joede.fadel
Donizeti foi mal eu testei a sua conexão e esqueci de verificar a forma que você estava utilizando o comando sql, o executeQuery é utilizado para SELECT e quando você utiliza INSERT, UPDATE, DELETE o método utilizado é o executeUpdate(sql); esse metodo retorna um numero inteiro se eu não estou enganado 0(zero) quando do da algum erro e 1 quando é executado normalmente.
uma dica para facilitar a identificação utilize os metodos e.getMessage() ou e.printStackTrace();
publicstaticvoidmain(String[]args){// TODO code application logic herejava.sql.Connectionconnection=null;try{StringdriverName="org.gjt.mm.mysql.Driver";Class.forName(driverName);Stringservidor="localhost:3306";StringnomeDoBanco="conector";Stringurl="jdbc:mysql://"+servidor+"/"+nomeDoBanco;Stringlogin="root";Stringsenha="doni";connection=DriverManager.getConnection(url,login,senha);//Criando um objeto Statement para enviar requisições SQL para o Banco de Dados Statementstmt=(Statement)connection.createStatement();intrset=stmt.executeUpdate("insert into teste ('id','nome','ano'"+"values(1,'Donizeti','1998')");}catch(ClassNotFoundExceptione){System.out.println("O driver especificado não foi encontrado");}catch(SQLExceptione){System.out.println(e.getMessage());e.printStackTrace();}{System.out.println("Não foi possível conectar com o banco de dados");}}
Hum, não sei se é, mas esta me cheirando que é o conector do mysql, vc colocou o conector nas libs? Cc tem que setar ele no classpath para que funcione, exemplo:
int rset = stmt.executeUpdate(“insert into teste (‘id’,‘nome’,‘ano’” + // faltou fechar o parenteses aqui
“values(1,‘Donizeti’,‘1998’)”);
Donizeti
Cara coloquei o parênteses , mas mesmo assim não roda nem por decreto… :?
mas agradeço pela ajuda
joede.fadel
vc criou um campo not null na sua tabele e vc não está inserindo dados nela simulei esse erro aqui, se quiser mais explicação poste a sql do create table, mais um errinho teu agora que foi perceber para identificar os campos é assim (id,nome,ano) não assim (‘id’,‘nome’,‘ano’) não tenho certeza mas no mySql vc pode utilizar (id,nome,ano`)
Donizeti
cara , corrigi meu código,ele compila e não da mais erro não…
run:
5
6
CONSTRUÍDO COM SUCESSO (tempo total: 0 segundos)
mais como vc falou , ele não ta inserindo na tabela, meu código no MYSQL é esse:
create table teste(
id int(10) unsigned auto_increment null,
nome varchar null,
ano varchar(4) null,
primary key (id));
como falei ele não inseri dados na tabela …o que mais pode ser, me ajudem galera…
Desde já agradeço…
joede.fadel
como o seu campo id é auto incremento vc não coloca ele na sql faz assim
insert into teste (nome,ano) values (‘nome’,‘2008’);
Donizeti
to eu aki dinovo, não sei o que ta acontecendo o programa reconhece meu banco e o driver certinho , porém quando eu tento criar um objeto Statement para enviar requisições SQL para o Banco de Dados, o programa não aceita , ele pede uma conversão , e se eu fizer essa conversão ,ele me da um erro quando compilo…
o problema ocorre nas linhas 17 e 18…
publicstaticvoidmain(String[]args){// TODO code application logic herejava.sql.Connectionconnection=null;try{StringdriverName="org.gjt.mm.mysql.Driver";Class.forName(driverName);Stringservidor="localhost:3306";StringnomeDoBanco="conector";Stringurl="jdbc:mysql://"+servidor+"/"+nomeDoBanco;Stringlogin="root";Stringsenha="doni";connection=DriverManager.getConnection(url,login,senha);//Criando um objeto Statement para enviar requisições SQL para o Banco de Dados Statementstmt=connection.createStatement();ResultSetrset=stmt.executeUpdate("insert into teste3 (id,nome,ano)"+"values('Donizeti','1998')");}catch(ClassNotFoundExceptione){System.out.println("O driver especificado não foi encontrado");}catch(SQLExceptione){System.out.println(e.getMessage());e.printStackTrace();}{System.out.println("Não foi possível conectar com o banco de dados");}}
joede.fadel
ResultSetrset=stmt.executeUpdate("insert into teste3 (id,nome,ano)"+// tira o id deixa assim (nome,ano)"values('Donizeti','1998')");
Donizeti
agora sim deu certo show de bola…mas o código ficou assim:
Statementstmt=(Statement)connection.createStatement();stmt.executeUpdate("insert into teste3 (nome,ano)"+"values('ze','1998')");
tirei o ResultSet e rodo legal , no caso para que serveria esse ResultSet…
wleu joede pela juda e atenção
abrçs
joede.fadel
O ResultSet é um objeto responsável por manipular os dados quando é executada uma query "SELECT" ex:
ResultSetrs=stmt.executeQuery("SELECT id,nome,ano FROM teste");while(rs.next()){System.err.println("ID -->"+rs.getInt("id"));System.err.println("NOME -->"+rs.getString(2));System.err.println("ANO -->"+rs.getInt("ano"));}