程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#批量更新sql實例

C#批量更新sql實例

編輯:C#入門知識

C#批量更新sql實例。本站提示廣大學習愛好者:(C#批量更新sql實例)文章只能為提供參考,不一定能成為您想要的結果。以下是C#批量更新sql實例正文


本文實例講述了C#批量更新sql的辦法,分享給年夜家供年夜家參考。詳細辦法以下:

要完成批量更新Card數據,重要有以下步調:

1、起首樹立數據庫銜接

2、把部門數據填充到Dataset中

3、修正Dataset中數據的值

4、更新Dataset

5、輪回操作,詳細操作進程見上面代碼:

public void BatchUpdate(List<Card> list)
{
    using (SqlConnection conn = new SqlConnection(DbHelperSQL.connectionString))
    {
 conn.Open();
 using (SqlDataAdapter da = new SqlDataAdapter())
 {
     da.SelectCommand = new SqlCommand("select top 100 ScanFlag,CardId from Card",conn);
     DataSet ds = new DataSet();
     da.Fill(ds);

     da.UpdateCommand = new SqlCommand("update Card set ScanFlag = @ScanFlag where CardId = @CardId", conn);
     da.UpdateCommand.Parameters.Add("@ScanFlag", SqlDbType.Bit, 1, "ScanFlag");
     da.UpdateCommand.Parameters.Add("@CardId", SqlDbType.Int, 4, "CardId");
     da.UpdateCommand.UpdatedRowSource = UpdateRowSource.None;
     da.UpdateBatchSize = 0;

     for (int i = 0; i < list.Count; i++)
     {
  for (int j = 0; j < ds.Tables[0].Rows.Count; j++, i++)
  {
      ds.Tables[0].Rows[j].BeginEdit();
      ds.Tables[0].Rows[j]["ScanFlag"] = true;
      ds.Tables[0].Rows[j]["CardId"] = list[i].CardId;
      ds.Tables[0].Rows[j].EndEdit();
      if (i == list.Count - 1)
   break;
  }
  da.Update(ds.Tables[0]);
     }
     ds.Clear();
     ds.Dispose();
 }
    }
}

願望本文所述對年夜家的C#法式設計有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved