Acesso a banco de dados 1. Crie uma pasta chamada AcessoBD com as seguintes subpastas: Aplicativos, Drivers, AcessoMSACCESS, AcessoMySQL e AcessoSQLSERVER
Exemplo 1: MS ACCESS 1. Crie um banco de dados chamado cadastro com uma tabela chamada cliente, com os seguintes campos código, nome, sexo e idade. Salve-o na pasta AcessoMSACCESS. 2. Registre o banco na fonte de dados ODBC. Endereço: Painel de Controle > Ferramentas Administrativas > Fonte de Dados (ODBC).
3. Escolher um Banco de Dados na guia Fonte de Dados de Usuário e clicar no botão adicionar. 4. Escolher o driver na janela seguinte e clicar em concluir. 5. Aparecerá uma nova janela onde você escolherá o banco de dados criado e clique em OK. 6. Banco de Dados cadastro registrado na Fonte de Dados ODBC. Clique OK.
Agora vamos para o eclipse onde criaremos um projeto chamado ACCESSDEMO 1. Defina a workspace na pasta AcessoMSACCESS.
2. Criando o projeto ACCESSDEMO, o pacote br.home.accessdemo.exemplo e a classe Cadastro. 3. Comece a programar sua classe Cadastro com acesso ao banco criado e envio de instruções SQL. Veja como ficará a classe: package br.home.accessdemo.exemplo; import java.sql.*; import javax.swing.*; public class Cadastro public static void main(string[] args) int codigo = 111; String nome = "Fulano"; String sexo = "Masculino"; int idade = 30; //endereço do driver JDBC String driver = "sun.jdbc.odbc.jdbcodbcdriver"; //endereço do banco criado String url = "jdbc:odbc:cadastro"; try //carregando o driver JDBC Class.forName(driver); //estabelecendo a conexão com o banco de dados Connection cnx = DriverManager.getConnection(url); //mensagem ao usuário JOptionPane.showMessageDialog(null, "Conexão estabelecida!!!");
//criando intruções SQL: INSERT String sql1 = "INSERT INTO cliente VALUES ('"+codigo+"','"+nome+"','"+sexo+"','"+idade+"')"; //criando um Statement: gerencia a execução de instruções SQL Statement ms = cnx.createstatement(); ms.executeupdate(sql1); //criando intruções SQL: SELECT String sql2 = "SELECT * FROM cliente WHERE codigo=111"; //obtendo resultados do banco ResultSet rs = ms.executequery(sql2); rs.next(); //resultados da consulta System.out.println(rs.getString("codigo")); System.out.println(rs.getString("nome")); System.out.println(rs.getString("sexo")); System.out.println(rs.getString("idade")); //criando intruções SQL: INSERT codigo = 113; nome = "Fulana"; sexo = "Feminino"; idade = 22; sql1 = "INSERT INTO cliente VALUES ('"+codigo+"','"+nome+"','"+sexo+"','"+idade+"')"; ms.executeupdate(sql1); //criando intruções SQL: UPDATE nome = "Fulana Ciclana"; String sql3 = "UPDATE cliente SET nome='"+nome+"' WHERE nome='fulana'"; ms.executeupdate(sql3); //criando intruções SQL: DELETE String sql4 = "DELETE FROM cliente WHERE codigo=111"; ms.executeupdate(sql4); //mensagem ao usuário JOptionPane.showMessageDialog(null, "Operações realizadas com sucesso!!!"); cnx.close(); catch (ClassNotFoundException e1) JOptionPane.showMessageDialog(null, "Driver não encontrado!!!"); catch (SQLException e2) JOptionPane.showMessageDialog(null, "Erro de SQL!!!"); Explore esse código e veja quais limitações ele tem. Execute mais que uma vez e veja o que acontece.
4. Veja como ficou o console do eclipse e o banco depois da execução da classe.
Exemplo 2: MySQL 1. Baixe o MySQL e o driver JDBC Connector/J e coloque-os nas pastas Aplicativos e Drivers. Você pode encontrá-los no site http://dev.mysql.com/downloads/. As versões são MySQL 5.1 GA e MySQL Connector/J 5.1.
2. Instale o aplicativo MySQL 5.1 GA. 3. Crie um banco de dados chamado cadastro com uma tabela chamada cliente, com os seguintes campos codigo, nome, sexo e idade.
Agora vamos para o eclipse onde criaremos um projeto chamado MYSQLDEMO 1. Defina a workspace na pasta AcessoMySQL 2. Criando o projeto MYSQLDEMO, o pacote br.home.mysqldemo.exemplo e a classe Cadastro.
3. Descompacte o driver Connector/J na pasta Drivers > MySQL 4. Adicione ao seu projeto MYSQL o driver Connector/J da seguinte forma: Clique com botão direito do mouse no projeto MYSQLDEMO > Build Path > Add External Archives...
5. Selecione o arquivo com extensão *.jar descompactado na pasta Drivers > MySQL. 6. Driver adicionado!!!
7. Comece a programar sua classe Cadastro com acesso ao banco criado e envio de instruções SQL. Veja como ficará a classe: package br.home.mysqldemo.exemplo; import java.sql.*; import javax.swing.*; public class Cadastro public static void main(string[] args) int codigo = 111; String nome = "Fulano"; String sexo = "Masculino"; int idade = 30; //endereço do driver JDBC String driver = "com.mysql.jdbc.driver"; //endereço do banco criado // jdbc:mysql://[host]:[port]/nomedobanco String url = "jdbc:mysql://localhost/cadastro"; //porta padrão: 3306, host padrão localhost ou 127.0.0.1 //usuario e senha String usuario = "root"; String senha = ""; try //carregando o driver JDBC Class.forName(driver); //estabelecendo a conexão com o banco de dados Connection cnx = DriverManager.getConnection(url,usuario,senha); //mensagem ao usuário JOptionPane.showMessageDialog(null, "Conexão estabelecida!!!"); //criando intruções SQL: INSERT String sql1 = "INSERT INTO cliente VALUES ('"+codigo+"','"+nome+"','"+sexo+"','"+idade+"')"; //criando um Statement: gerencia a execução de instruções SQL Statement ms = cnx.createstatement(); ms.executeupdate(sql1); //criando intruções SQL: SELECT String sql2 = "SELECT * FROM cliente WHERE codigo=111"; //obtendo resultados do banco ResultSet rs = ms.executequery(sql2); rs.next(); //resultados da consulta System.out.println(rs.getString("codigo")); System.out.println(rs.getString("nome")); System.out.println(rs.getString("sexo")); System.out.println(rs.getString("idade")); //criando intruções SQL: INSERT codigo = 113; nome = "Fulana"; sexo = "Feminino"; idade = 22;
sql1 = "INSERT INTO cliente VALUES ('"+codigo+"','"+nome+"','"+sexo+"','"+idade+"')"; ms.executeupdate(sql1); //criando intruções SQL: UPDATE nome = "Fulana Ciclana"; String sql3 = "UPDATE cliente SET nome='"+nome+"' WHERE nome='fulana'"; ms.executeupdate(sql3); //criando intruções SQL: DELETE String sql4 = "DELETE FROM cliente WHERE codigo=111"; ms.executeupdate(sql4); //mensagem ao usuário JOptionPane.showMessageDialog(null, "Operações realizadas com sucesso!!!"); cnx.close(); catch (ClassNotFoundException e1) JOptionPane.showMessageDialog(null, "Driver não encontrado!!!"); catch (SQLException e2) JOptionPane.showMessageDialog(null, "Erro de SQL!!!"); 8. Veja como ficou o console do eclipse e o banco depois da execução da classe.
Exemplo 3: MS SQL SERVER 1. Baixe o MS SQL SERVER 2008 EXPRESS. Você pode encontrá-los no site http://www.microsoft.com/express/sql/default.aspx. Baixe o driver JDBC em: http://www.microsoft.com/downloads/details.aspx?displaylang=en&familyid=99b21b65-e98f-4a61-b811-19912601fdc9.
2. Instale o aplicativo MS SQL SERVER 2008 EXPRESS. 3. Crie um banco de dados chamado cadastro com uma tabela chamada cliente, com os seguintes campos codigo, nome, sexo e idade. Agora vamos para o eclipse onde criaremos um projeto chamado MSSQLSERVERDEMO 1. Defina a workspace na pasta AcessoSQLSERVER
2. Criando o projeto MSSQLSERVERDEMO, o pacote br.home.mssqlserverdemo.exemplo e a classe Cadastro. 3. Descompacte o driver JDBC na pasta Drivers > MS SQL SERVER
4. Adicione ao seu projeto MSSQLSERVERDEMO o driver JDBC da seguinte forma: Clique com botão direito do mouse no projeto MSSQLSERVERDEMO > Build Path > Add External Archives... 5. Selecione o arquivo com extensão *.jar descompactado na pasta Drivers > MSSQLSERVERDEMO.
6. Driver adicionado!!! 7. Comece a programar sua classe Cadastro com acesso ao banco criado e envio de instruções SQL. Veja como ficará a classe: package br.home.mssqlserver.exemplo; import java.sql.*; import javax.swing.*; public class Cadastro public static void main(string[] args) int codigo = 111; String nome = "Fulano"; String sexo = "Masculino"; int idade = 30; //endereço do driver JDBC String driver = "com.microsoft.sqlserver.jdbc.sqlserverdriver"; //endereço do banco criado // jdbc:sqlserver://[host]:[port] String url = "jdbc:sqlserver://localhost:2148"; //porta padrão???: 1433, host padrão localhost ou??? 127.0.0.1 //usuario e senha String usuario = "sa"; String senha = "prof"; try //carregando o driver JDBC Class.forName(driver); //estabelecendo a conexão com o banco de dados Connection cnx = DriverManager.getConnection(url,usuario,senha); //mensagem ao usuário
JOptionPane.showMessageDialog(null, "Conexão estabelecida!!!"); //criando intruções SQL: INSERT String sql1 = "INSERT INTO cliente VALUES ('"+codigo+"','"+nome+"','"+sexo+"','"+idade+"')"; //criando um Statement: gerencia a execução de instruções SQL Statement ms = cnx.createstatement(); ms.executeupdate(sql1); //criando intruções SQL: SELECT String sql2 = "SELECT * FROM cliente WHERE codigo=111"; //obtendo resultados do banco ResultSet rs = ms.executequery(sql2); rs.next(); //resultados da consulta System.out.println(rs.getString("codigo")); System.out.println(rs.getString("nome")); System.out.println(rs.getString("sexo")); System.out.println(rs.getString("idade")); //criando intruções SQL: INSERT codigo = 113; nome = "Fulana"; sexo = "Feminino"; idade = 22; sql1 = "INSERT INTO cliente VALUES ('"+codigo+"','"+nome+"','"+sexo+"','"+idade+"')"; ms.executeupdate(sql1); //criando intruções SQL: UPDATE nome = "Fulana Ciclana"; String sql3 = "UPDATE cliente SET nome='"+nome+"' WHERE nome='fulana'"; ms.executeupdate(sql3); //criando intruções SQL: DELETE String sql4 = "DELETE FROM cliente WHERE codigo=111"; ms.executeupdate(sql4); //mensagem ao usuário JOptionPane.showMessageDialog(null, "Operações realizadas com sucesso!!!"); cnx.close(); catch (ClassNotFoundException e1) JOptionPane.showMessageDialog(null, "Driver não encontrado!!!"); e1.printstacktrace(); catch (SQLException e2) JOptionPane.showMessageDialog(null, "Erro de SQL!!!"); e2.printstacktrace();
8. Veja como ficou o console do eclipse e o banco depois da execução da classe.