2012-11-18 64 views
1

我从excel文件中提取数据,其中数据每周在同一个excel文件中累积。例如,第X周将包含第1周到第X周的数据。然后第X + 1周将包含第1周到第X + 1周的数据。 将此累积数据加载到数据库中的最有效方法是什么?目前,我正在清除整个数据库,然后从第1周到本周加载数据。显然这个过程是低效的,因为我从我的数据库清除数据只是将其重新加载到数据库中...SSIS Excel数据提取

对于以下想法,我可以有人帮助我决定哪条路是最佳路线?或者,如果你有更好的想法,请让我知道。所有帮助表示赞赏!

  1. 有没有办法有效地计算“设置差异”与Excel文件?然后,我可以加载当前周文件和上周文件的差异。
  2. 我可以跟踪我加载数据的所有星期,然后“查询”那些不在数据库中的星期的excel文件。我希望这个查询可以通过散列来提高效率。

我认为获得上述任何一个想法的必要问题是:通过SSIS的哪些方法可以在Excel中操作数据?

回答

3
  • 坚持你在控制表
  • procesed最后一个完整的日期阅读日期为包变量
  • 更改您的Excel源代码编辑器 - >数据访问模式下运行的SQL命令
  • 输入sql语句,包括工作表名称并输入?为参数值。例如SELECT * FROM [Sheet1$] where extractdate > ?
  • 点击参数按钮,参数变量(第二步)分配给SQL语句
+0

我已经做了第一个4个步骤。你能告诉我最后一步的一些细节吗? SSIS不断告诉我“参数映射字符串格式不正确”我也无法在Google上找到它。我试过这个:@ [User :: MostRecentDate] – CodeKingPlusPlus

+0

这里变量MostRecentDate指向步骤2中的包变量。 – CodeKingPlusPlus