`
yuanlanxiaup
  • 浏览: 858198 次
文章分类
社区版块
存档分类
最新评论

sql 2008的SSIS应用方法: 将多个一定格式的文本文件批量导入到数据库

 
阅读更多

提示:

1, sqlHelper.ImportTargetDataSource,sqlHelper.ImportTargetDBUid,sqlHelper.ImportTargetDBPwd,sqlHelper.ImportTargetDBName:这些设置连接你数据库的相关信息就OK了

2, 需要引用这2个命名空间,具体需要的DLL可以从网上百度到

using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Tasks.ExecutePackageTask;

3, 这里的 NewPackage_20110526_02.dtsx 是sql 2008下的包文件

选中数据库--> 右键--> 任务--> 导入数据-->选择数据源为:平面数据源

选中文件-->指定分割符-->绑定 源数据与目标数据的列 --> 最终生成一个.dtsx的包文件

4, 若有多个文本文件,在for循环中调用

ExecutePackage(txtFilePath) 就OK了

5, 这种解决方案 一般适用于数据库字段 和 文本文件格式已经定型的情况。

如果数据库字段,文本文件的列发生改变,那么 这个 .dtsx 重新生成一下就OK了。

按上述操作完成后,用户可以随心所欲的选择 1个或多个 内容具有同样格式的文本文件,进行批量导入。

我操作过10多个平均每个约1.5MB的文本文件(有10个字段列), 导入到sql2008的表中,数据大约有200W条,用时45秒左右。

这个效率, 用sql语句简单的 for循环 200W次,可能没法达到。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics