Java数据库结构主要包括以下几个部分:
1、数据库连接
2、创建表
3、插入数据
4、查询数据
5、更新数据
6、删除数据
7、关闭连接
下面分别详细介绍每个部分。
数据库连接
在Java中,我们通常使用JDBC(Java Database Connectivity)来连接数据库,首先需要导入JDBC驱动包,然后通过DriverManager获取数据库连接。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DBConnection { private static final String URL = "jdbc:mysql://localhost:3306/test"; private static final String USER = "root"; private static final String PASSWORD = "123456"; public static Connection getConnection() { Connection connection = null; try { Class.forName("com.mysql.jdbc.Driver"); connection = DriverManager.getConnection(URL, USER, PASSWORD); } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } return connection; } }
创建表
在数据库中创建一个表,可以使用Statement对象执行SQL语句,以下是创建一个名为student的表的示例:
import java.sql.Connection; import java.sql.Statement; import java.sql.SQLException; public class CreateTable { public static void main(String[] args) { Connection connection = DBConnection.getConnection(); Statement statement = null; try { statement = connection.createStatement(); String sql = "CREATE TABLE student (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(20), age INT)"; statement.executeUpdate(sql); } catch (SQLException e) { e.printStackTrace(); } finally { if (statement != null) { try { statement.close(); } catch (SQLException e) { e.printStackTrace(); } } if (connection != null) { try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } } }
插入数据
向表中插入数据,同样使用Statement对象执行SQL语句,以下是向student表中插入一条数据的示例:
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import java.util.Scanner; public class InsertData { public static void main(String[] args) { Connection connection = DBConnection.getConnection(); PreparedStatement preparedStatement = null; try { preparedStatement = connection.prepareStatement("INSERT INTO student (name, age) VALUES (?, ?)"); Scanner scanner = new Scanner(System.in); System.out.println("请输入姓名:"); String name = scanner.nextLine(); System.out.println("请输入年龄:"); int age = scanner.nextInt(); preparedStatement.setString(1, name); preparedStatement.setInt(2, age); int result = preparedStatement.executeUpdate(); if (result > 0) { System.out.println("插入成功!"); } else { System.out.println("插入失败!"); } } catch (SQLException e) { e.printStackTrace(); } finally { if (preparedStatement != null) { try { preparedStatement.close(); } catch (SQLException e) { e.printStackTrace(); } } if (connection != null) { try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } } }
查询数据(以查询所有学生为例)
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/642179.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复