关于海量数据插入的问题

lingmaozhijia 2008-05-27 10:02:15
MySQL 版本是5.0.27-community-nt
数据库驱动:用的是 MySQL.Data.Dll 版本是1.0.10.1
插入10W条记录要花费 半个小时的时间

但是据微软专家测试
MySQL.Data.Dll 插入只需要17秒

ODBC.net需要24秒
为什么我在我电脑上测试 却花费了半个小时的时间呢

搞不懂
是不是MySql.Data.Dll版本太低呢

希望哪位达人能帮我解惑
...全文
81 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wenquan_nn 2008-05-28
  • 打赏
  • 举报
回复
我的做法是,把数据整理好之后放到DataSet里面,然后再adapter.Update(ds,"NewsData");

1万多条采集来的数据保存到ACCESS,然后过滤、处理,再导入SQL,整个过程时间在2-5秒!

对数据库的操作,链接的时间、链接的次数越少越好!

我这种方法应付10万条数据应该不成问题,如果不行一次刷5万也可以啊,灵活变通嘛!
lingmaozhijia 2008-05-27
  • 打赏
  • 举报
回复
只说不做

鄙视你
lingmaozhijia 2008-05-27
  • 打赏
  • 举报
回复
别一直顾着说啊
烁烁我应该怎么改良代码
难道把记录导入Dataset
然后在更新
DataAdapter??
SoSoMuch 2008-05-27
  • 打赏
  • 举报
回复
1.你每次一条数据。
2.每次创建2个对象。
3.。。。。
SoSoMuch 2008-05-27
  • 打赏
  • 举报
回复
确实代码质量比较差。
lingmaozhijia 2008-05-27
  • 打赏
  • 举报
回复
没有什么很复杂的代码啊
就是
string str="insert into tableA values(null,1,1)"
for(int i=0;i<100000;i++)
{
insertCommand(str);
}


public void insertCommand(str)
{
//....
new connection...
new command
command.ExecuteNonQuery()
.....
}
或许可能是事物型插入,在处理事物时太耗时间呢

明天看看批量插入怎么样
honkerhero 2008-05-27
  • 打赏
  • 举报
回复
代码质量太差

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧