ACCESS批量修改提交

先放几个链接,要细致研究的时候再看:

Inside ADO.NET Batch Update
http://msdn.microsoft.com/en-us/library/ms810297.aspx

使用 DataAdapter 更新数据源
http://msdn.microsoft.com/zh-cn/library/33y2221y(v=VS.80).aspx#Y1161

Use DataTable to update table in Database
http://www.java2s.com/Code/CSharp/Database-ADO.net/UseDataTabletoupdatetableinDatabase.htm

C# 数据库批量更新问题
http://zhidao.baidu.com/question/126951488.html

做了一个小工具,用来清洗ACCESS的数据,原来的方法是取全表,然后遍历每一行,再两个正则表达式匹配,再UPDATE该行,效率比较低,一千五百多条的数据,就要花费一分钟。

考虑用批量UPDATE改进,理论上应该能够减少IO,大大提高效率。(当然结果也证明了,效率大幅提高,原有的千多条数据,不出三秒就完成了。^_^)

粘上代码,以备以后查阅:

OleDbConnection DataConnection = new OleDbConnection(DBFile);
string selectSQL = "SELECT ID, 原出版社, 原书名, 出版社, 版次, 出版日期, 书名, 装帧 FROM Content";
DataConnection.Open();
OleDbDataAdapter da = new OleDbDataAdapter(selectSQL,  DataConnection );
DataTable rawData = new DataTable ();
da.Fill(rawData);
DataConnection.Close();

Regex regPress = new Regex(@"");

for (i = 0; i < rawData.Rows.Count; i++)
{
	// if match 1
            rawData.Rows[i]["出版社"] = ;
}

OleDbCommandBuilder odbCB = new OleDbCommandBuilder(da);    // 这句是关键
da.Update(rawData);

转载于:https://www.cnblogs.com/miuq/archive/2011/03/07/1974404.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值