首页 新闻 会员 周边 捐助

C# 使用SqlBulkCopy插入大量数据到SqlServer越来越慢的问题

0
[已解决问题] 解决于 2017-12-18 09:40

我要导入一些数据到数据库,每次110w左右,开始的几次都还比较快,但是越到后面越慢,没准确计时,但是插入7、8次后,每次插入时间超过了10分钟。

没有设置索引

请教大神要怎么解决啊,或者有更好的插入方式请指教

hangjy的主页 hangjy | 初学一级 | 园豆:4
提问于:2017-12-12 10:33
< >
分享
最佳答案
0

确认下你数据库文件增加大小是按M还是按比例,如果是按比例换成按M后指定一个合理范围(不要太大,太大了还是会慢)后再试下

奖励园豆:5
Daniel Cai | 专家六级 |园豆:10424 | 2017-12-15 16:49

好的,谢谢

hangjy | 园豆:4 (初学一级) | 2017-12-18 09:39
其他回答(2)
0

每次110W,原来的数据库里面有多少?你指望有多快?CPU、内存、硬盘是啥样的?

你总不能插入个十亿数据还是希望1秒完成吧,机器总有性能限制的。

爱编程的大叔 | 园豆:30844 (高人七级) | 2017-12-12 11:00

原来里面没有,刚开始一两次3、4分钟就插入完成,然后越来越慢,7、8次之后,每次超过30分钟还没插完,电脑是自己的笔记本,不是服务器,i7,8g,系统盘是固态硬盘,数据库存储地址是机械硬盘

支持(0) 反对(0) hangjy | 园豆:4 (初学一级) | 2017-12-12 11:03

@hangjy: 然后呢?

你这样测试没有意义,开始3、4分钟,后面数据多了,慢点正常的 。

正常的数据库操作不会没事干就插入几百万条数据的,所以慢点没有关系的,

想快点,可以,独立的服务器,加大内存,好硬盘,好CPU就行了。

 

如果想让人帮你看看代码有没有问题,那需要贴代码,否则这样一点儿用处都没有的。

支持(0) 反对(0) 爱编程的大叔 | 园豆:30844 (高人七级) | 2017-12-12 15:07
0

由于该表没有主键也不影响我的使用,所以去掉了主键,也就没有了默认的索引,另外分成每10w条提交一次,这样现在每组110w全部插入完只需33秒

hangjy | 园豆:4 (初学一级) | 2017-12-18 09:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册