在VS2005中,写入如下语句;完成事务;在运行过程中,经常发现,写入成功后又,又显示写入失败(因为设置了主键,不能重复的)。到数据库查看数据应该成功写入;代码如下           Sql_conn.Open();
            SqlCommand Sql_Add_Cmd = Sql_conn.CreateCommand();
            Sql_Add_Cmd.CommandTimeout = 300;  //连接时限改为300秒
            SqlTransaction SqlTran = Sql_conn.BeginTransaction();
            Sql_Add_Cmd.Transaction = SqlTran;            Oracle_conn.Open();
            OracleCommand Ora_Bill_Cmd = Oracle_conn.CreateCommand();
            OracleTransaction OraTran = Oracle_conn.BeginTransaction();
            Ora_Bill_Cmd.Transaction = OraTran;
      
            using (TransactionScope transScope = new TransactionScope())
            {
                try
                {//---创建事务用-------
                    
                 FOR (i=0;i<m;i++)
                     {
                       ...
                       ...
                      插入语句
                     }                    SqlTran.Commit();                    //提交数据
                    OraTran.Commit();                    //提交数据                   
                }
                catch (Exception ex)
                {
                    SqlTran.Rollback();           //回滚数据
                    OraTran.Rollback();
                    Response.Write("----具体错误描述请看"+ex.String());
                 
                }
            }              Sql_conn.Close();
            Oracle_conn.Close();错误日志:XX写入成功!   XX写入失败,原因是主键存在!