实验目的与要求
本次实验旨在通过Java编程实现数据库的基本操作,包括连接数据库、查询数据、插入数据、更新数据和删除数据等,了解SQL语句的使用以及如何将Java代码与数据库进行交互。
实验环境
- 操作系统:Windows 10
- JDK版本:1.8
- 数据库管理系统:MySQL 5.7
- 编译器:Eclipse IDE for Java Developers
实验步骤与过程
建立数据库和表结构
- 创建数据库
CREATE DATABASE testdb;
- 选择数据库
USE testdb;
- 创建学生信息表
CREATE TABLE student ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20), age INT, gender CHAR(1) );
编写Java程序连接数据库
-
导入必要的包
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException;
-
获取数据库连接
public class DatabaseConnection { private static final String URL = "jdbc:mysql://localhost:3306/testdb"; private static final String USER = "root"; private static final String PASSWORD = "password"; public static Connection getConnection() throws SQLException { return DriverManager.getConnection(URL, USER, PASSWORD); } }
执行SQL查询
-
编写查询方法
图片来源于网络,如有侵权联系删除
public class QueryData { public void queryStudents() { try (Connection conn = DatabaseConnection.getConnection()) { String sql = "SELECT * FROM student"; Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { int id = rs.getInt("id"); String name = rs.getString("name"); int age = rs.getInt("age"); char gender = rs.getString("gender").charAt(0); System.out.println(id + ", " + name + ", "年龄" + age + ", 性别" + gender); } } catch (SQLException e) { e.printStackTrace(); } } }
执行SQL插入、更新和删除操作
-
编写插入方法
public class ModifyData { public void insertStudent(String name, int age, char gender) { try (Connection conn = DatabaseConnection.getConnection()) { String sql = "INSERT INTO student(name, age, gender) VALUES (?, ?, ?)"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, name); pstmt.setInt(2, age); pstmt.setString(3, String.valueOf(gender)); pstmt.executeUpdate(); System.out.println("Insert successful!"); } catch (SQLException e) { e.printStackTrace(); } } public void updateStudent(int id, String name, int age, char gender) { try (Connection conn = DatabaseConnection.getConnection()) { String sql = "UPDATE student SET name = ?, age = ?, gender = ? WHERE id = ?"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, name); pstmt.setInt(2, age); pstmt.setString(3, String.valueOf(gender)); pstmt.setInt(4, id); pstmt.executeUpdate(); System.out.println("Update successful!"); } catch (SQLException e) { e.printStackTrace(); } } public void deleteStudent(int id) { try (Connection conn = DatabaseConnection.getConnection()) { String sql = "DELETE FROM student WHERE id = ?"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setInt(1, id); pstmt.executeUpdate(); System.out.println("Delete successful!"); } catch (SQLException e) { e.printStackTrace(); } } }
测试结果
在Eclipse中运行上述代码,观察控制台输出结果:
图片来源于网络,如有侵权联系删除
- 查询所有学生的信息:
1, 张三, 18, M 2, 李四, 19, F 3, 王五, 20, M
- 插入一条新记录:
Insert successful!
- 更新一条记录:
Update successful!
- 删除一条记录:
Delete successful!
通过本次实验,我成功实现了Java程序与MySQL数据库之间的基本交互功能,包括连接数据库、查询、插入、更新和删除操作,这不仅加深了我对数据库操作的掌握程度,也提升了我的实际编程能力,在未来的学习中,我会继续深入学习和研究数据库相关的知识和技术。
标签: #java数据库编辑的实验报告
评论列表