Consulta de base de datos
Utilice el método createStatement del objeto Connection para crear un objeto Statement, utilice el método ejecutarQuery() del objeto Statement para ejecutar la instrucción de consulta SQL y devolver el conjunto de resultados, y luego lea los datos del conjunto de resultados utilizando un método como obtenerXXX(). Después de esta serie de pasos, se puede realizar la consulta a la base de datos.
[Ejemplo] La aplicación Java accede a la base de datos. La aplicación abre la tabla de información del candidato ksInfo y recupera información diversa sobre el candidato. Supongamos que la estructura de la base de datos de información del candidato es la siguiente:
importar java.awt.*;importar java.awt.event.*;importar javax.swing.*;importar java.util.*;importar java.sql.*;la clase pública Ejemplo10_9 extiende JFrame implementa ActionListener{ Conexión estática pública connectByJdbcodbc( URL de cadena, nombre de usuario de cadena, contraseña de cadena){ Conexión con = nulo; Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //Cargar el controlador ODBC} catch (Exception e){ e.printStackTrace() return null //La carga falló, la conexión no tuvo éxito} try{ con = DriverManager; .getConnection(url, nombre de usuario, contraseña); } catch (SQLException e){ e.printStackTrace(); return null //Conexión fallida} return con; Título de cadena[] ={"Número de examen", "Nombre", "Calificación", "Dirección", "Resumen"}; JTextField txtNo = new JTextField(8); JTextField(3); JTextField txtAddr = nuevo JTextField(30); JTextArea txtresume = new JTextArea(); JButton anterior = nuevo JButton("anterior"); JButton siguiente = nuevo JButton("siguiente"); JButton primero = nuevo JButton("primero"); ); Declaración sql; //Objeto de declaración SQL ResultSet rs; // Resultado de la consulta de almacenamiento objectExample10_9(Connection connect){ super("Ventana de visualización de información del candidato"); setSize(450, 350); try{ sql = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); ("SELECCIONAR * DE ksInfo"); Container con = getContentPane(); con.setLayout(new BorderLayout(0, 6); JPanel p[] = nuevo JPanel[4]; for (int i = 0; i < 4; i++){ p[ i] = nuevo JPane(nuevo FlowLayout(FlowLayout.LEFT, 8, 0)); p[i].add(nuevo JLabel(título[i])); } p[0].add(txtNo); p[1].add(txtName); p[2].add(txtScore); JPanel p1 = nuevo JPane (nuevo GridLayout94, 1, 0, 8)); JScrollPane jsp = nuevo JScrollPane(txtResume, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); jsp.setPreforredSize(nueva Dimensión(300, 60); para (int i = 0; i < 4; i++){ p1.add(p[i]); } JPanel p2 = nuevo JPanel(nuevo FlowLayout(FlowLayout.LEFT, 10, 0); p2.add(nuevo JLabel(título[4])); p2.add(jsp); Jpanel p3 = nuevo Jpanel(); p3.add(anterior); p3.add(siguiente); p3.add(primero); p3.add(último); anterior.addActionListener(este); next.addActionListener(this); first.addActionListener(this); last.addActionlistener(this); rs.first(); readRecord() } catch (Excepción e){ e.printStackTrace(): } setVisible(ture); } public void modificarRecord(Conexión conectar){ String stuNo = (String)JOptionPane.showInputDialog(null, "Ingrese el número de examen del candidato", "Ingrese el cuadro de diálogo del número de examen", JOptionPane.PLAIN_MESSAGE, null, null, ""); intente { sql = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); .executeQuery ("SELECT * FROM ksInfo"); getContentPane(); con.setLayout(new Boarderlayout(0, 6)); Jpanel p[] = nuevo JPanel[4]; FlowLayout(flowLayout.LEFT, 8, 0)); p[i].add(new JLabel(title[i])); p[0].add(txtNo); p[1].add(txtName); p[2].add(txtScore); p[3].add(txtAddr); , 1, 0, 8)); JScrollPane jsp = nuevo JScrollPane(txtResume, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); jsp.setPreferredSize (nueva dimensión (300, 60)); para (int i = 0; i < 4; i++){ p1.add(p[i]); nuevo JPanel (nuevo FlowLayout(FlowLayout.LEFT, 10, 0)); p2.add(new JLableI(title[4])); p2.add(jsp); agregar (siguiente); p3.add (primero); p3.add (último); anterior.addActionListener (este); next.addActionListener(this); first.addActionListenerIthis); last.addActionListener(this); rs.first(); readRecord(); captura (Excepción e){ e.printStackTrace(); readRecord(){ try{ txtNo.setText(rs.getString("Número de examen")); txtName.setText(rs.getString("nombre")); txtScore.setText(rs.getString("puntuación")); txtAddr.setText(rs.getString("dirección")); "Reanudar")); } catch (SQLException e){ e.printStackTrace(); return false; verdadero; } public void actionPerformed(ActionEvent e){ try{ if (e.getSource() == anterior)rs.previous() else if (e.getSource() == next)rs.next(); (e.getSource() == primero)rs.first(); else if (e.getSource() == último)rs.last(); readRecord(); catch (Excepción e2){} } static void main(String args[]){ conexión conectar = nulo; setDefaultLookAndFeeDecoated(true); Fuente fuente = nueva Fuente("JFrame", Font.PLAIN, 14); :solrojo", "xia", "1234")) == nulo){ JOptionPane.showMessageDialog(null, "¡Error en la conexión de la base de datos!");
Actualización de la base de datos Java <br />Las operaciones de actualización de la base de datos incluyen la creación, eliminación y adición, eliminación y modificación de registros de la tabla de datos. Si se implementa utilizando comandos SQL de datos, use el método ejecutarUpdate() del par de declaraciones para ejecutar la declaración de actualización de SQL para modificar la tabla de datos; ejecute la declaración de inserción de SQL para agregar los registros de la tabla de datos;
Por ejemplo, según el ejemplo de consulta de datos anterior, agregue modificación e inserción a la tabla de datos. Debido a limitaciones de espacio, no se proporcionará el programa completo, solo los métodos para implementar la modificación e inserción. El programa puede agregar botones insertar, y guardar. A través de la navegación existente, ubique una posición específica de la tabla de datos, edite, modifique, inserte o elimine el registro de carbúnculo y luego presione el botón guardar para completar la tabla de datos modificada. . ahorrar.
El siguiente código explica cómo actualizar la tabla de datos. Al conectarse a una tabla de datos, debe especificar que el objeto ResultSet obtenido se puede actualizar.
stmt = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);