老师我这样批量添加不成功 哪里出问题了 只能添加一条
来源:6-6 自由编程
hejunmiao
2019-08-28 21:17:09
package jdbc.practice; import java.sql.Connection; import java.sql.Date; import java.sql.PreparedStatement; import org.junit.Test; import jdbc.utils.JDBCUtils; public class practice4 { @Test /** * 首先将表格中的三条数据添加到数据库 */ public void demo1() { Connection conn=null; PreparedStatement pstmt=null; try { //获得连接 conn=JDBCUtils.getConnection(); //编写sql String sql="INSERT INTO course(name,category,desp,createTime) VALUES(?,?,?,?)"; conn.setAutoCommit(false); // 预编译SQL: pstmt=conn.prepareStatement(sql); // 设置参数: pstmt.setString(1,"Java零基础"); pstmt.setString(2,"Java"); pstmt.setString(3,"Java基础语法"); pstmt.setDate(4,new Date(System.currentTimeMillis())); pstmt.addBatch(); pstmt.setString(1,"Java Web"); pstmt.setString(2,"Java"); pstmt.setString(3,"Jsp和Servlet"); pstmt.setDate(4,new Date(System.currentTimeMillis())); pstmt.addBatch(); pstmt.setString(1,"前端小白"); pstmt.setString(2,"J前端"); pstmt.setString(3,"HTML/CSS/JS"); pstmt.setDate(4,new Date(System.currentTimeMillis())); pstmt.addBatch(); int num=pstmt.executeUpdate(); if(num>0) { System.out.println("添加成功"); } conn.commit(); conn.setAutoCommit(true); } catch (Exception e) { e.printStackTrace(); }finally { JDBCUtils.release(pstmt, conn); } } }
2回答
同学你好!
这个executeBatch(),返回的为一个int数组,数组中存放每一条语句的执行情况,具体可以查看下图:
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
hejunmiao
提问者
2019-08-28
已经解决了
执行语句改成这样就行了
pstmt.executeBatch();
那这个该返回什么 判断是添加成功了
相似问题