public boolean insertScoreCount(DBWrapper db,List list) throws SQLException{
boolean flag = false;
String sql = "insert into eip_dzkh_score_count t" +
     "(ID,TARGET_NAME,DEPT_B_NAME,DEPT_NAME,UPDATE_DATE,YEAR,MONTH,TYPE_DEPT,GOALS,FINISH,RATE,SCORE,COMPLETION_RATES," +
     "SCORE_AUTOMATIC,SCORE_FINAL,ILLUSTRATE,REMARK,RESERVED_1,"+"RESERVED_2,RESERVED_3,RESERVED_4,RESERVED_5,RESERVED_6," +
     "RESERVED_7,RESERVED_8,RESERVED_9,RESERVED_10,RESERVED_11) " +
         "values(EIP_DZKH_SCORE_COUNT_SQE.Nextval,?,?,?,sysdate,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,'',?,?,'')";
db.prepareStatement(sql);
for(int i=0;i<list.size();i++){
System.out.println(i);
Map map = new HashMap();
map = (Map)list.get(i);
db.setString(1, (String)map.get("target_name"));
db.setString(2, (String)map.get("dept_b_name"));
db.setString(3, (String)map.get("dept_name"));
db.setString(4, (String)map.get("year"));
db.setString(5, (String)map.get("month"));
db.setString(6, (String)map.get("type_dept"));
db.setString(7, (String)map.get("goals"));
db.setString(8, (String)map.get("finish"));
db.setString(9, (String)map.get("rate"));
db.setString(10, (String)map.get("score"));
db.setString(11, (String)map.get("completion_rates"));
db.setString(12, (String)map.get("score_automatic"));
String score_final = (String)map.get("score_final");
if(score_final==null || "".equals(score_final)){
score_final = "0.00";
}
db.setDouble(13, Double.parseDouble(score_final));
db.setString(14, (String)map.get("illustrate"));
db.setString(15, (String)map.get("re"));
db.setString(16, (String)map.get("RESERVED_1"));
db.setString(17, (String)map.get("RESERVED_2"));
db.setString(18, (String)map.get("RESERVED_3"));
db.setString(19, (String)map.get("RESERVED_4"));
db.setString(20, (String)map.get("RESERVED_5"));
db.setString(21, (String)map.get("RESERVED_6"));
db.setString(22, (String)map.get("RESERVED_7"));
System.out.println((String)map.get("byxs") + "::::::::::::::::" + (String)map.get("bydx"));
db.setString(23, (String)map.get("byxs"));   
db.setString(24, (String)map.get("bydx"));
db.addPreparedBatch();
}
flag = db.executePreparedBatch();
return flag;
}

解决方案 »

  1.   

    应用程序中showmessage(SQL语句),然后放到SQL里面看能否运行
      

  2.   

    你的SQL写的有问题,调试下看SQL是不是有问题。
      

  3.   

    解决问题尤如破案,需要仔细观察蛛丝马迹,SQL没效果一定会有错误的.
      

  4.   

    建议在窗体上一个 meno1控件
    将那些SQL全部返回到这个 meno1控件
    再将这个 meno1控件中的SQL代码复制到MSSQL环境 运行一下,看看 什么地方 出现了问题一步一步测试吧
      

  5.   

    可以用SQL Server Profiler工具追踪一下SQL语句,如果你用的是MS SQL Server的话
      

  6.   

    谢谢各位,原因找到了:在service层调用的存储过程,是存储过程在执行过程中失败了,到账事务回滚,dao层没有错误。
    郁闷。