以下是详解通过JDBC进行简单的增删改查的攻略:
JDBC简介
Java Database Connectivity(JDBC)是Java语言中访问数据库的一种标准方式,它提供了一种访问不同数据库的标准方法。通过JDBC,开发者可以使用Java程序连接到不同的数据库,执行SQL查询,以及处理查询结果。
JDBC使用流程
通常,使用JDBC完成数据库操作,流程如下:
- 加载驱动:加载JDBC驱动程序;
- 连接数据库:使用驱动程序创建Connection对象;
- 创建数据操作对象:通过Connection创建数据操作对象,如Statement、PreparedStatement等;
- 执行SQL语句:使用数据操作对象执行SQL语句,如查询、插入、删除、更新等;
- 处理查询结果:处理查询结果并以需要的方式呈现。
使用JDBC进行MySQL数据库操作
以下是使用JDBC进行MySQL数据库操作的示例代码:
导入驱动依赖
<!-- MySQL驱动依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.11</version>
</dependency>
加载驱动
Class.forName("com.mysql.cj.jdbc.Driver");
连接数据库
String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);
创建数据操作对象
使用Connection创建数据操作对象,如Statement、PreparedStatement等:
Statement stmt = conn.createStatement();
PreparedStatement pstmt = conn.prepareStatement(sql);
执行SQL语句
使用数据操作对象执行SQL语句,如查询、插入、删除、更新等:
查询数据
String sql = "SELECT * FROM user WHERE id = ?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, id);
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
System.out.println("id: " + id + ", name: " + name + ", age: " + age);
}
插入数据
String sql = "INSERT INTO user (name, age) VALUES (?, ?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setInt(2, age);
int affectedRows = pstmt.executeUpdate();
System.out.println("插入成功,受影响的行数:" + affectedRows);
更新数据
String sql = "UPDATE user SET name = ?, age = ? WHERE id = ?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setInt(2, age);
pstmt.setInt(3, id);
int affectedRows = pstmt.executeUpdate();
System.out.println("更新成功,受影响的行数:" + affectedRows);
删除数据
String sql = "DELETE FROM user WHERE id = ?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, id);
int affectedRows = pstmt.executeUpdate();
System.out.println("删除成功,受影响的行数:" + affectedRows);
处理查询结果
ResultSet对象包含了查询返回的结果,可以通过该对象的方法获取查询结果,如getInt、getString等。
以上就是通过JDBC进行简单的增删改查(以MySQL为例)的攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解通过JDBC进行简单的增删改查(以MySQL为例) - Python技术站