C# 多线程往数据库里插入数据! 多线程c#线程 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 插入数据库不推荐用多线程,可以开了数据库链接暂时不关,如果数据量巨大可以用批量插入的bulk copy方法,楼主能说下是出于什么情况会要多线程插入数据吗 推荐的是根cpu数量一致或其2倍左右 哈哈,最近也在做类似的工作; Thread myThread = new Thread(new ThreadStart(WriteDataToSql)); myThread.Start();或者你在一个线程池中也可以,只是效率可能会低点; 能请教下这样做法的意义吗,再可以打开数据库链接不关闭,循环插入数据,c#也支持一次执行多条insert语句,而且还有bulk copy的情况下为什么会选择线程方式去插入数据 web本身就是个多线程,跟winfrom 区别不大吧? 能请教下这样做法的意义吗,再可以打开数据库链接不关闭,循环插入数据,c#也支持一次执行多条insert语句,而且还有bulk copy的情况下为什么会选择线程方式去插入数据因为不只是插数据啊。还有包括抓数据,插数据,和其他一些逻辑处理的我只是把这个问题简单的表达出来。我怕说得复杂了,把你们搞晕了 楼主听听我的建议吧,首先你从网页上获取数据,可以是多线程也可以是唯一线程,数据归总到一个集合,后台起一跟线程,每隔一段时间去copy这个集合,并把集合清空等待下次填充。对copy的集合做去重处理,以免插入重复数据。多线程或者单线程检查是否与数据库有重复,可以预先抽取数据库数据到缓存,这样效率会比较高。把做完去重的数据整理出来,拼接成一句或多句可以一次执行的sql,执行sql(这里如果数据量巨大可以考虑用bulk copy),最后如果有缓存,更新下缓存,等待下次执行开始。 这点我并不是很同意,如果真要使用多个线程去操作数据库,就必须要打开多个数据库链接或者使用链接池,因为对于单个数据库链接来说,简单sql语句是顺序执行的,你的进程只是同时把insert语句加入到sql的执行队列而已,不管你加的速度有多快,sql最终还是一条一条来执行,并没有并发效果 因为要做个程序去批量从网上抓数据,然后加到数据库,我现在是单线程嘛。速度太慢,所以想如果用多线程速度就会快很多。对于找取数据部分用多线程,然后生成的SQL保存一下,开一个专门存储的线程。运行SQL语句。 做过工作流中消息服务的高手请进 C#写Excel,大量数据 string 类型的赋值问题 怎样循环控件? 请问安装包怎么实现把指定文件拷贝到系统目录? vs2005水晶报表部署出错 如何得知字符串是否以数字开头??? ArrayList的count最大能为多少? 基本知识,循环的灵活使用~~~ 谁有真正的.net风格的菜单源码,带阴影的,薄边框的? C# 如何使画出的矩形不被移动的空间覆盖 C#中[SecurityCritical]是什么意思?求解!!!
myThread.Start();
或者你在一个线程池中也可以,只是效率可能会低点;
因为不只是插数据啊。还有包括抓数据,插数据,和其他一些逻辑处理的我只是把这个问题简单的表达出来。我怕说得复杂了,把你们搞晕了
对于找取数据部分用多线程,然后生成的SQL保存一下,开一个专门存储的线程。运行SQL语句。