Conexão com Banco de dados[/resolvido]

7 respostas
C_Lucas

Bom dia. Estou tentando criar um aplicativo que tenha uma conexão com banco de dados feito no ms access. Criei um aplicativo que testa a conexão com um determinado banco porém a conexão não é estabelecida. Poderiam me ajudar a descobrir o que eu errei pois sem esse aplicativo não rodar não terei o principio para criar outras conexões no futuro. Segue abaixo o código do aplicativo.

import java.sql.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

// aplicativo para teste de conexao ao BD

public class TesteConexaoBDtcc extends JFrame {

    JButton conectar ;

    public TesteConexaoBDtcc(){
        setTitle("Teste para conexão com BD");
        Container tela = getContentPane();
        setLayout(null);
tela.setBackground(new Color (197,205,225));

conectar = new JButton ("conectar");
conectar.setBounds(100,75,150,27);
conectar.setFont(new Font("Times New Roman", Font.ITALIC,16));
conectar.setForeground(new Color(1,0,250));

conectar.addActionListener(
		new ActionListener(){
			public void actionPerformed(ActionEvent e) {
try{
    String url ="jdbc.odbc:C:/Caminho no meu pc/cad_alunosfunc.mdb;Driver ={microsoft access Dirve(*.mdb)}";
    String username="";
    String password = "";
    Connection conexao;
    conexao = DriverManager.getConnection
            (url,username,password);
    JOptionPane.showMessageDialog(null,"Conexão fi efetuada com sucesso " +
            "meu BrOtHeR","Tentativa de conexão",
            JOptionPane.INFORMATION_MESSAGE);
    conexao.close();
}
catch(Exception event)
{
    JOptionPane.showMessageDialog(null,"Conexão falhou meu BrOtHeR",
            "Tentativa de conexão falhou",
            JOptionPane.ERROR_MESSAGE);
}
			}
		});



    tela.add(conectar);




    setSize(350,200);
     setVisible(true);
    setResizable(false);
    setLocationRelativeTo(null);
    }

    public static void main(String[] args) {
       TesteConexaoBDtcc app = new TesteConexaoBDtcc();
       app.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    }

}

tenho duvidas na parte do try onde coloco a url. Gostaria de saber se devo colocar o caminho completo da localização do banco de dados. Desde de ja agradeço-lhes

7 Respostas

g4j

você escreveu Dirve ao invés de Drive…

Lindberg

criou a conexao no Painel de controle / Ferramentas / ODBC ?
ja tentou assim ?

Ver se ajuda !!!

final private String DRV = “sun.jdbc.odbc.jdbcOdbcDriver”;
private String url = “jdbc:odbc:MINHA_CONEXAO_DO_XP”;

Class.forName(DRV);
conn = DriverManager.getConnection(url, username, password);

C_Lucas

Valeu mesmo, tinha que criar a conexão nas ferramentas administrativas, Eu não sabia e quis fazer direto. e faltava essa linha aqui

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Muito obrigado Lindberg e g4j:D .

Lindberg

flw

viniciusgundim

Acho que vc deveria usar essa classe:

import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.*;
public class conexao{
    final private String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
    //Efetua a Conexão com o Banco
    final private String url = "jdbc:odbc:BD";
    final private String usuario = "";
    final private String senha = "";
    private Connection conexao;
    //Responsável por abrir o caminho até o Banco de Dados
    public Statement statement;
    //Armazena os Dados do Banco
    public ResultSet resultset;
    
    //Classe Conecta
    public boolean conecta () {
        boolean result = true;
        try {
            Class.forName(driver);
            try {
                conexao = DriverManager.getConnection(url, usuario, senha);
                System.out.println("Conectou");
            } catch (SQLException ex) {
                Logger.getLogger(conexao.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
        catch(ClassNotFoundException Drive) {
            JOptionPane.showMessageDialog(null, "Não foi Possível Conectar a Base de Dados");
            result = false;
        
        }
        return result;
    }
    //Classe Desconecta
    public void desconecta (){
        boolean result = (true);
        try{
            conexao.close();
        }
                catch (SQLException erroSQL){
                    result =false;
                }
    }
    //Conecta Sql
    public void execultesql(String sql){
        try{
            
            statement = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
            resultset = statement.executeQuery(sql); 
        }
        catch (SQLException sqlex){
            JOptionPane.showMessageDialog(null, "Não foi possível executar o comando SQL"+sqlex);
        }
    }

    public void executesql(String string) {
        throw new UnsupportedOperationException("Not yet implemented");
    }
}

E não se esqueça de configurar o ODBC

viniciusgundim

Estava escrevendo o post, e quando atualizei já estava as repostas desculpas…

C_Lucas

Muito obrigado vou precisar disso pois o aplicativo que tinha feito só irá testar a conexão e preciso criar uma classe que envie dados para o banco de dados e possa efetuar consultas. De qualquer forma obrigado.

Criado 18 de maio de 2010
Ultima resposta 18 de mai. de 2010
Respostas 7
Participantes 4