请教高手,数据导入的问题!!!

zhuawang 2012-07-06 08:27:33
我的数据库有一张表,里面已经有几千万条记录,以后可能会更多。现在我要往这张表中导入数据。数据是从文本文件导进去的。要导入的文本文件有好几十个,每个文本文件也就是在几百万条记录左右。可是我现在导入就已经很慢了,每导一个文本都要花几个小时甚至更久。请问有什么好的方法导入数据吗?我现在用的是数据库自带的导入导出向导。有别的更好的方法吗?谢谢!!!
...全文
87 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuawang 2012-07-07
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

用BCP和Bulk Insert本身就很快,如果你用2005以后的SQLServer,建议先做分区。这样在插入的时候是可以并行插入,提高速度,然后插入时先禁用索引及触发器。同时把数据库恢复模式短暂转换成大容量日志。因为你这种操作一般不会在上班时间操作,所以上面那些操作都是可行的。
[/Quote]
请问先做分区该怎么做?
天-笑 2012-07-07
  • 打赏
  • 举报
回复
楼主可以用SSIS工具导入,导入时选择文件,选Bulk Insert。
这样会提高一点效率,但是从楼主的数据量来看,
还是先将文件用Bulk Insert导入到若干个同结构的数据表里;
最后合并成一张表,不过这个表也太大了,楼主有必要研究下 分区表
以学习为目的 2012-07-07
  • 打赏
  • 举报
回复
我也想知道大量数据的导入有什么办法可以提高导入速度
發糞塗牆 2012-07-06
  • 打赏
  • 举报
回复
用BCP和Bulk Insert本身就很快,如果你用2005以后的SQLServer,建议先做分区。这样在插入的时候是可以并行插入,提高速度,然后插入时先禁用索引及触发器。同时把数据库恢复模式短暂转换成大容量日志。因为你这种操作一般不会在上班时间操作,所以上面那些操作都是可行的。
shoppo0505 2012-07-06
  • 打赏
  • 举报
回复
新建一个相同的结构的表,先导入到新表,然后再合并。

倒入时间肯定会短很多,但是之后表数据合并需要一点时间,但是可以根据需要来操作,可能因为数据太多,你必须分表。

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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