科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道关于循环导入excel文件到SQL Server 2005

关于循环导入excel文件到SQL Server 2005

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

关于循环导入excel文件到SQL Server 2005

作者:csdn 来源:csdn 2009年12月18日

关键字: MS-SQL Server 问答

  • 评论
  • 分享微博
  • 分享邮件

关于循环导入excel文件到SQL Server 2005

 

一个目录中有多个Excel文件,每个EXCEL文件中有不定个数的工作表,工作表名称也可能不同,但是每个工作表的结构是相同的,所有文件中的工作表都导入同一个表中。如何实现?
我现在采用两个FOREACH循环嵌套的方式,可以循环目录中所有的文件,但是仅限于所有的工作表跟源表具有相同的架构,即有同样数量的工作表,相同的顺序和相同的工作表名称。

 

我的思路是:这个问题大概是卡在使用ADO.NET架构行集进行枚举,所以所有的文件都必须同源具有相同的架构,如果能动态地指定Foreach循环的源就好了。
能不能采用包配置输出这个连接字符串,然后在下一次循环之前修改包配置文件,将下一个Excel文件的名字替换上一次循环的Excel文件名称?好像SSIS组件中的文件系统不能修改文件中的内容,有没有其他办法呢?

你先保证能够实现如下两篇文章的内容
批量导入excel文件
http://blog.csdn.net/jinjazz/archive/2008/07/25/2710169.aspx
循环工作表
http://blog.csdn.net/jinjazz/archive/2008/07/28/2722987.aspx

然后理解一下其中变量的用法,批量导入的时候用到一个用户::xlsFile变量,循环工作表使用了一个用户::table变量,在第二篇文章中有一个细节是编辑excel数据源链接的Expressions,第16到18步。这个用法是把excel的链接改为变量定义。同理在枚举excel文件之后,嵌套一个枚举excel架构的容器,然后把枚举链接的Expressions里面的servername属性改为用户::xlsFile就可以了。没有这个步骤你会永远钉着一个excel来枚举所以会出错

 

 

 

 

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章