Java 使用ibatis导入大量数据生成异常错误

Java 使用ibatis导入大量数据生成异常错误,java,sql,oracle,ibatis,Java,Sql,Oracle,Ibatis,我试图使用Ibatis(不是myIbatis)在oracle DB上导入1个快照 大量数据,但没有成功。 代码如下: 开始 插入表格( 身份证件 col1, col2) 价值观( SEQUENCE.nextval, #[]col1#, #[]col2#); 结束; public void insertList(List insertList)引发SQLException { 尝试 { insert(“insertList”,insertList); } 捕获(SQLE异常) { 系统输出打印

我试图使用Ibatis(不是myIbatis)在oracle DB上导入1个快照 大量数据,但没有成功。 代码如下:


开始
插入表格(
身份证件
col1,
col2)
价值观(
SEQUENCE.nextval,
#[]col1#,
#[]col2#);
结束;

public void insertList(List insertList)引发SQLException
{
尝试
{
insert(“insertList”,insertList);
}
捕获(SQLE异常)
{
系统输出打印(“错误”+e);
}
}
产生的错误令人困惑,因为我们确实在10g上尝试了它,结果是由于
程序太大了
,这是有道理的

  • 在11g上,我不确定生成的错误是否是由于db版本导致的,因为发送的列表
    insertList
    将在过程中提交,但由于arrayList中
    col1
    的值取代了
    col2
    我确实跟踪了我的
    jetspeed
    中的日志,得到了什么是executement语句,以及ibatis发送的参数(结果是所有参数都放在正确的位置,一切看起来都很好)
  • 我确实直接从
    pl/sqldeveloper
    执行了这些语句,数据集成得很好
作为解决方案,我确实移动到了一个批处理文件,没有出现任何错误,我得到了我需要的东西,但仍然想知道是什么问题使我的列表没有表现出来,并导致尝试将
col1
的值插入
col2

  • 是不是因为ibatis和迭代破坏了列表
  • 是不是从甲骨文方面来看,甲骨文没有很好地处理这份名单
  • 可能是服务器端的吗
  • 最后,我能找出如何解决这种插入问题吗
  • 注意:在少数记录上尝试这个场景对我来说很好,没有错误

您得到了什么错误代码?这与isert使用错误参数填充列的错误无关。。。实际情况是,我的最后一列被设置为null,而第一列是外键,因此我得到了违规约束键错误,但这是因为外键列试图插入错误的参数(null参数)。希望我能澄清我的想法point@ibre5041你现在清楚了吗?
public void insertList(List<TestBean> insertList) throws SQLException
      {
         try
         {
            sqlMap.insert("insertList", insertList);
         }
         catch(SQLException e)
         {
           System.out.Print("error"+e);
         }
      }