this.oracleConnection1.Open();
this.oracleDataAdapter1.Fill(dataSet11,"DC_REPORT_SUM");
this.oracleConnection2.Open();
this.oracleDataAdapter2.Fill(dataSet11,"L2_DC_REPORT_SUM");for (int i = 0 ; i < this.dataSet11.Tables["DC_REPORT_SUM"].Rows.Count ; i++)
{
    DataRow r = this.dataSet11.Tables["L2_DC_REPORT_SUM"].NewRow();
    r["COILNO"] = this.dataSet11.Tables["DC_REPORT_SUM"].Rows[i]["COILNO"];
    r["SRTNO"] = this.dataSet11.Tables["DC_REPORT_SUM"].Rows[i]["SRTNO"];
    this.dataSet11.Tables["L2_DC_REPORT_SUM"].Rows.Add(r);
}this.oracleDataAdapter2.Update(dataSet11,"L2_DC_REPORT_SUM");  //出错:ora-00001违反唯一约束条件 
this.oracleConnection2.Close();
this.oracleConnection1.Close();
   我要将DC_REPORT_SUM的数据全部导入L2_DC_REPORT_SUM中,DC_REPORT_SUM的数据有上万条,L2_DC_REPORT_SUM与DC_REPORT_SUM的字段COILNO为UNIQUE,COILNO在L2_DC_REPORT_SUM中还为PRIMARY KEY,但执行到this.oracleDataAdapter2.Update(dataSet11,"L2_DC_REPORT_SUM"); 出错:ora-00001违反唯一约束条件 ,但导入成功1094条数据,dataSet11中的表都没有设置KEY

解决方案 »

  1.   

    没有设置key并不表示没有设置唯一约束。
      

  2.   

    是不是没有从DC_REPORT_SUM中的第一条记录开始导入??如果是,怎样写??
      

  3.   

    请高手指点,急,在线等!!!
    上面的代码是不是没有从DC_REPORT_SUM中的第一条记录开始导入??如果是,应该怎样写??
      

  4.   

    ora-00001违反唯一约束条件 :表示你要更新的数据,出现主键重复的!还有使用DataAdapter不需要open connection, 所以也不需要close connection
      

  5.   

    检查Primary Key 或Unique Key 或数据
      

  6.   

    如果只是让成功执行不报错,不要使用oracleDataAdapter2.Update()
    改为采用类似UpdateCommand.ExecuteNonQuery()之类的。