正在回答
2回答
同学可以根据下面代码的思路进行多条数据的插入:
public void insertBatch() { int count[]; Boolean isinsert = false; Connection con = null; PreparedStatement pst = null; PreparedStatement pst1 = null; try { con = getCon(); con.setAutoCommit(false); // 需要用到事务,不能让他自动提交,需要手动提交 pst = con.prepareStatement(INSERT_SQL); // INSERT_SQL表示对一张表的插入记录 pst.setString(1, "name1"); pst.setInt(2, 26); pst.setString(3, "job1"); pst.addBatch(); pst.setString(1, "name2"); pst.setInt(2, 12); pst.setString(3, "job2"); pst.addBatch(); count = pst.executeBatch(); con.commit(); //提交事务,这个非常重要 for(int i : count){ if(i == 0) { con.rollback(); // 回滚,非常重要 System.out.println("======出现异常,回滚========="); } } } catch (SQLException e) { try { con.rollback(); // 回滚,非常重要 } catch (SQLException e1) { e1.printStackTrace(); } System.out.println("------出现异常,回滚----------"); e.printStackTrace(); } finally { cloCon(con,pst); } }
sql语句采用占位符的方式。
祝学习愉快!
Java数据库开发与实战应用2018版
- 参与学习 人
- 提交作业 277 份
- 解答问题 4297 个
Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星