327 字
2 分钟
JDBC增删改操作
AI 摘要
JDBC增删改操作
定义
JDBC中执行增删改(DML)操作通过 PreparedStatement.executeUpdate() 方法完成,返回值为受影响的记录行数。
语法/用法
执行DML语句的标准流程
// 1. 建立数据库连接Connection conn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/web", "root", "1234");
// 2. SQL语句(预编译)String sql = "UPDATE user SET password = ?, age = ? WHERE id = ?";
// 3. 创建PreparedStatementPreparedStatement pstmt = conn.prepareStatement(sql);
// 4. 设置参数pstmt.setString(1, newPassword);pstmt.setInt(2, newAge);pstmt.setInt(3, userId);
// 5. 执行更新int rowsUpdated = pstmt.executeUpdate();
// 6. 关闭资源pstmt.close();conn.close();DML vs DQL 返回值
| 操作类型 | 方法 | 返回值 |
|---|---|---|
| DML(INSERT/UPDATE/DELETE) | executeUpdate() | int — 影响的记录数 |
| DQL(SELECT) | executeQuery() | ResultSet — 查询结果集 |
事务处理
JDBC默认自动提交。如需手动控制事务:
conn.setAutoCommit(false); // 关闭自动提交// ... 执行多条DML ...conn.commit(); // 手动提交// 或 conn.rollback(); // 出错时回滚常见场景
- 用户信息的增删改操作
- 批量数据导入/更新
- 需要事务控制的复杂业务操作
注意事项
- DML操作必须使用预编译SQL(
PreparedStatement),防止SQL注入。 - 执行完毕后必须关闭
PreparedStatement和Connection。 executeUpdate()返回值可用于判断操作是否成功(影响行数 > 0)。- 多条DML需保证原子性时,务必使用事务控制。
相关链接
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!
最后更新于 2026-05-19,距今已过 32 天
部分内容可能已过时
评论区
[ 标签 ]
[ 分类 ]
[ 公告 ]
如果你喜欢,那么欢迎来到我的世界!
了解更多[ 音乐 ]
找不到相关结果。
[ contents ]
[ 全部文章 ]