Conexão com Banco de Dados

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


public static void main(String[] args) {
        
        java.sql.Connection connection = null;
        try{
            String driverName = "org.gjt.mm.mysql.Driver";
            Class.forName(driverName);
            String servidor="localhost";
            String nomeDoBanco="conector";
            String url="jdbc:mysql://"+servidor+"/"+nomeDoBanco;
            String login="seu login";
            String senha="sua senha";
            
            connection = DriverManager.getConnection(url,login,senha);
            
        }catch (ClassNotFoundException e)
        {
            System.out.println("O driver especificado não foi encontrado");
        }catch(SQLException e)
        {
            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á…

Donizete, dá uma olhada neste material.

Abraços

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!!!

public static void main(String[] args) {
       
        java.sql.Connection connection = null;
        try{
            String driverName = "org.gjt.mm.mysql.Driver";
            Class.forName(driverName);
            String servidor="localhost";
            String nomeDoBanco="conector";
            String url="jdbc:mysql://"+servidor+"/"+nomeDoBanco;
            String login="****";
            String senha="****";
            
            connection = DriverManager.getConnection(url,login,senha);
            
           //Criando um objeto Statement para enviar requisições SQL para o Banco de Dados    
           Statement stmt = (Statement) connection.createStatement();
           ResultSet rset = stmt.executeQuery("insert into teste ('id','nome','ano'" +
                 "values('1','Donizeti','1998')");
        }catch (ClassNotFoundException e)
        {
            System.out.println("O driver especificado não foi encontrado");
        }catch(SQLException e)
        {
            System.out.println("Não foi possível conectar com o banco de dados");
        }
             
    }

[quote=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!!!

[code]
public static void main(String[] args) {

    java.sql.Connection connection = null;
    try{
        String driverName = "org.gjt.mm.mysql.Driver";
        Class.forName(driverName);
        String servidor="localhost";
        String nomeDoBanco="conector";
        String url="jdbc:mysql://"+servidor+"/"+nomeDoBanco;
        String login="****";
        String senha="****";
        
        connection = DriverManager.getConnection(url,login,senha);
        
       //Criando um objeto Statement para enviar requisições SQL para o Banco de Dados    
       Statement stmt = (Statement) connection.createStatement();
       ResultSet rset = stmt.executeQuery("insert into teste ('id','nome','ano'" +
             "values('1','Donizeti','1998')");
    }catch (ClassNotFoundException e)
    {
        System.out.println("O driver especificado não foi encontrado");
    }catch(SQLException e)
    {
        System.out.println("Não foi possível conectar com o banco de dados");
    }
         
}

[/code][/quote]

faltou colocar a porta para conexão com banco de dados

String servidor="localhost:<porta>"; a porta pradrão do mysql é a 3306

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

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

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

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();

ex:

     } catch (SQLException e) {        
                System.out.println(e.getMessage());
                e.printStackTrace();
            }

eles mostram a causa do exception

Meu código ficou assim agora , mas ele da erro na linha 17…o seguinte erro:

java.sql.SQLException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '‘id’,‘nome’,‘ano’values(1,‘Donizeti’,‘1998’)’ at line 1
Não foi possível conectar com o banco de dados
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2928)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1571)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1666)
at com.mysql.jdbc.Connection.execSQL(Connection.java:2988)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:935)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:873)
at bancodedados.Main.main(Main.java:38)

ñ sei mais o que fazer…

public static void main(String[] args) {
        // TODO code application logic here
        java.sql.Connection connection = null;
        try{
            String driverName = "org.gjt.mm.mysql.Driver";
            Class.forName(driverName);
            String servidor="localhost:3306";
            String nomeDoBanco="conector";
            String url="jdbc:mysql://"+servidor+"/"+nomeDoBanco;
            String login="root";
            String senha="doni";
            
            connection = DriverManager.getConnection(url,login,senha);
            
           //Criando um objeto Statement para enviar requisições SQL para o Banco de Dados    
           Statement stmt = (Statement) connection.createStatement();
            int rset = stmt.executeUpdate("insert into teste ('id','nome','ano'" +
                 "values(1,'Donizeti','1998')");
        }catch (ClassNotFoundException e)
       
        {
            System.out.println("O driver especificado não foi encontrado");
        }catch(SQLException e)
        {
            System.out.println(e.getMessage());   
           e.printStackTrace();   

        }
        {
            System.out.println("Não foi possível conectar com o banco de dados");
        }
             
    }

Te aconselho usar o jdbc, veja mais em: http://www.guj.com.br/java.tutorial.artigo.7.1.guj

Olá,

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:

CLASSPATH=%CLASSPATH%;C:\ARQUIV~1\JAVA\JDK1.6.0\JRE\LIB\mysql-connector-java-3.0.14-production-bin.jar

Pode ser isso, como tb não pode ser …

Generosamente,

Frid

int rset = stmt.executeUpdate(“insert into teste (‘id’,‘nome’,‘ano’” + // faltou fechar o parenteses aqui
“values(1,‘Donizeti’,‘1998’)”);

Cara coloquei o parênteses , mas mesmo assim não roda nem por decreto… :?
mas agradeço pela ajuda

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`)

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…

como o seu campo id é auto incremento vc não coloca ele na sql faz assim
insert into teste (nome,ano) values (‘nome’,‘2008’);

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…

public static void main(String[] args) {
        // TODO code application logic here
        java.sql.Connection connection = null;
        try {
            String driverName = "org.gjt.mm.mysql.Driver";
            Class.forName(driverName);
            String servidor = "localhost:3306";
            String nomeDoBanco = "conector";
            String url = "jdbc:mysql://" + servidor + "/" + nomeDoBanco;
            String login = "root";
            String senha = "doni";
            

            connection = DriverManager.getConnection(url, login, senha);

            //Criando um objeto Statement para enviar requisições SQL para o Banco de Dados    
            Statement stmt =  connection.createStatement();
            ResultSet rset =  stmt.executeUpdate("insert into teste3 (id,nome,ano)" +
                    "values('Donizeti','1998')");
                    } catch (ClassNotFoundException e) {
            System.out.println("O driver especificado não foi encontrado");
        } catch (SQLException e) {
            System.out.println(e.getMessage());
            e.printStackTrace();

        }
        {
            System.out.println("Não foi possível conectar com o banco de dados");
        }
        
    }
ResultSet rset =  stmt.executeUpdate("insert into teste3 (id,nome,ano)" +  // tira o id deixa assim (nome,ano)
                    "values('Donizeti','1998')"); 

agora sim deu certo show de bola…mas o código ficou assim:

Statement stmt =  (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