提交大量数据时候,怎么防止数据丢失?怎么在没有提交成功时,使数据保存原样呢?
请帮忙写一下,谢谢 

解决方案 »

  1.   

    用数据库事务
    Transaction具体情况看看帮助吧
      

  2.   

    使用事务,详细说明请参考msdn:SqlConnection myConnection = new SqlConnection("Data Source=localhost;Initial Catalog=Northwind;Integrated Security=SSPI;");
    myConnection.Open();
    // 启动一个事务
    SqlTransaction myTrans = myConnection.BeginTransaction();
    // 为事务创建一个命令
    SqlCommand myCommand = new SqlCommand();
    myCommand.Connection=myConnection;
    myCommand.Transaction = myTrans;
    try
    {
    myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (100, "Description")";
    myCommand.ExecuteNonQuery();
    myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (101, "Description")";
    myCommand.ExecuteNonQuery();
    myTrans.Commit();//提交事务
    Console.WriteLine("Both records are written to database.");
    }
    catch(Exception e)
    {
    myTrans.Rollback();//事务回滚
    Console.WriteLine(e.ToString());
    Console.WriteLine("Neither record was written to database.");
    }
    finally
    {
    myConnection.Close();
    }