Consulta de banco de dados
Use o método createStatement do objeto Connection para criar um objeto Statement, use o método executeQuery() do objeto Statement para executar a instrução de consulta SQL e retornar o conjunto de resultados e, em seguida, leia os dados do conjunto de resultados usando um método como obterXXX(). Após essa série de etapas, a consulta ao banco de dados pode ser realizada.
[Exemplo] Aplicação Java acessa o banco de dados. O aplicativo abre a tabela de informações do candidato ksInfo e recupera diversas informações sobre o candidato. Suponha que a estrutura do banco de dados de informações de candidatos seja a seguinte:
importar java.awt.*;importar java.awt.event.*;importar javax.swing.*;importar java.util.*;importar java.sql.*;classe pública Exemplo10_9 estende JFrame implementa ActionListener{ conexão estática pública connectByJdbcodbc( String url, String nome de usuário,String senha){ Conexão con = null; Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //Carregar driver ODBC} catch (Exception e){ e.printStackTrace(); //Falha no carregamento, conexão malsucedida} try{ con = DriverManager; .getConnection(url, nome de usuário, senha); catch (SQLException e){ e.printStackTrace(); //Falha na conexão} return con; String title[] ={"Número do exame", "Nome", "Nota", "Endereço", "Currículo"}; JTextField(3); JTextField txtAddr = new JTextField(30); JTextArea txtresume = new JTextArea(); novo JButton("anterior"); JButton próximo = novo JButton("próximo"); ); Instrução sql; //objeto de instrução SQL ResultSet rs; //Resultado da consulta de armazenamento objectExample10_9(Connection connect){ super("Janela de visualização de informações do candidato"); try{ sql = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); ("SELECIONE*DE ksInfo"); Container con = getContentPane(); con.setLayout(new BorderLayout(0, 6); JPanel p[] = new JPanel[4]; for (int i = 0; i < 4; i++){ p[ i] = novo JPane(novo FlowLayout(FlowLayout.LEFT, 8, 0)); JLabel(título[i])); p[0].add(txtNo); JPanel p1 = novo JPane(novo GridLayout94, 1, 0, 8)); JScrollPane(txtResume, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); JPanel p2 = novo JPanel(new FlowLayout(FlowLayout.LEFT, 10, 0); p2.add(new JLabel(title[4])); p2.add(jsp); Jpanel p3 = new Jpanel(); p3.add(prev); p3.add(próximo); p3.add(primeiro); p3.add(último); next.addActionListener(this); first.addActionListener(this); last.addActionlistener(this); rs.first(); } public void modificarRecord(Conexão conectar){ String stuNo = (String)JOptionPane.showInputDialog(null, "Insira o número do exame do candidato", "Caixa de diálogo Insira o número do exame", JOptionPane.PLAIN_MESSAGE, null, null, ""); .executeQuery ("SELECT * FROM ksInfo"); getContentPane(); con.setLayout(new Boarderlayout(0, 6)); FlowLayout(flowLayout.LEFT, 8, 0));p[i].add(new JLabel(título[i])); p[0].add(txtNo); p[1].add(txtNome); p[2].add(txtScore).add(txtAddr); , 1, 0, 8)); JScrollPane jsp = novo JScrollPane(txtResume, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); jsp.setPreferredSize (nova dimensão (300, 60)); novo JPanel (novo FlowLayout(FlowLayout.LEFT, 10, 0)); p2.add(novo JLableI(título[4])); add(próximo); p3.add(primeiro); p3.add(último); next.addActionListener(this); first.addActionListenerIthis); last.addActionListener(this); rs.first(); readRecord(){ try{ txtNo.setText(rs.getString("Número do exame")); txtName.setText(rs.getString("nome")); txtScore.setText(rs.getString("pontuação")); txtAddr.setText(rs.getString("endereço")); "Retomar")); } catch (SQLException e){ e.printStackTrace(); verdadeiro; } public void actionPerformed(ActionEvent e){ try{ if (e.getSource() == prev)rs.previous(); (e.getSource() == primeiro)rs.first(); senão if (e.getSource() == último)rs.last(); static void main(String args[]){ conexão connect = null .setDefaultLookAndFeeDecorated(true); Font font = new Font("JFrame", Font.PLAIN, 14); :redsun", "xia", "1234")) == nulo){ JOptionPane.showMessageDialog(null, "Falha na conexão com o banco de dados!"); System.exit ( - 1);
Atualização de banco de dados Java As operações de atualização de banco de dados incluem criação, exclusão e adição, exclusão e modificação de tabelas de dados. Se for implementado usando comandos SQL de dados, use o método executeUpdate() do par de instruções para executar a instrução de atualização SQL para modificar a tabela de dados;
Por exemplo, com base no exemplo de consulta de dados anterior, adicione modificação e inserção à tabela de dados. Devido a limitações de espaço, não será fornecido o programa completo, apenas os métodos para implementar modificação e inserção. O programa pode adicionar botões inserir e salvar. Por meio da navegação existente, localize uma posição específica da tabela de dados, edite, modifique, insira ou exclua o registro do carbúnculo e pressione o botão salvar para concluir a tabela de dados modificada. . salvar.
O código a seguir explica como atualizar a tabela de dados. Ao conectar-se a uma tabela de dados, você precisa especificar que o objeto ResultSet obtido é atualizável.
stmt = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);