代码如下:
try{
//Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
//conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=ceping;SelectMethod=corsur;User=sa;Password=123");
conn.setAutoCommit(false); //设置不会自动提交
Statement stmt = conn.createStatement();
//Statement stmtw = conn.createStatement();String sql1 = "insert into tb_daan values('"+accounts+"','"+paper+"','"+daan+"','"+shijian+"','"+testtime+"',"+yztm+","+zongfen+",'')";
stmt.executeUpdate(sql1);
/**********************************************************
for(int sl=0;sl<sublist.size();sl++){
........
String sql2 = "insert into tb_fenshu values('"+accounts+"','"+paper+"','"+sub+"','"+fenshu+"','"+baifen+"','"+jf+"')";
stmt.executeUpdate(sql2);
}
************************************************************/
conn.commit(); //提交事务
conn.setAutoCommit(true);
System.out.println("Ok!");
conn.close();
}catch(SQLException e){
try{
conn.rollback(); // 操作不成功,回滚事务
}catch(SQLException r){
System.out.println(r.getMessage());
}
System.out.println(e.getMessage());
}问题是,什么错也没有报,但是数据库好像死掉了,数据也没执行成功。
如果去掉for循环,就一切正常了。
求各位高人帮帮忙啊!
try{
//Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
//conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=ceping;SelectMethod=corsur;User=sa;Password=123");
conn.setAutoCommit(false); //设置不会自动提交
Statement stmt = conn.createStatement();
//Statement stmtw = conn.createStatement();String sql1 = "insert into tb_daan values('"+accounts+"','"+paper+"','"+daan+"','"+shijian+"','"+testtime+"',"+yztm+","+zongfen+",'')";
stmt.executeUpdate(sql1);
/**********************************************************
for(int sl=0;sl<sublist.size();sl++){
........
String sql2 = "insert into tb_fenshu values('"+accounts+"','"+paper+"','"+sub+"','"+fenshu+"','"+baifen+"','"+jf+"')";
stmt.executeUpdate(sql2);
}
************************************************************/
conn.commit(); //提交事务
conn.setAutoCommit(true);
System.out.println("Ok!");
conn.close();
}catch(SQLException e){
try{
conn.rollback(); // 操作不成功,回滚事务
}catch(SQLException r){
System.out.println(r.getMessage());
}
System.out.println(e.getMessage());
}问题是,什么错也没有报,但是数据库好像死掉了,数据也没执行成功。
如果去掉for循环,就一切正常了。
求各位高人帮帮忙啊!
——是个确定值吗?
肯定是有死循环了