欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#批量更新sql实例

程序员文章站 2023-12-16 16:42:34
本文实例讲述了c#批量更新sql的方法,分享给大家供大家参考。具体方法如下: 要实现批量更新card数据,主要有以下步骤: 1、首先建立数据库连接 2、把部分数据填充...

本文实例讲述了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#程序设计有所帮助。

上一篇:

下一篇: