1

早上好。

我们需要将表从 Access 复制到 SQL。事情是源中的表名每天都在变化。我已经按照这篇文章的解决方案中显示的步骤如何以编程方式获取 SSIS 包中的 MS Access 表列表?

问题是这样的:

我更改了变量名称,这就是因为该帖子中所述的问题与我的非常相似。我按照这些步骤将 Country 更改为我的 Access DB 的表名,比如说 CITY。问题是当进程在Access中循环表时,复制到SQL表中的数据总是相同的。存储在 CITY 中的数据,似乎没有换表,它总是使用提供给 OLE DB 源的表(如屏幕截图 14# 所示)(在变量 'SelectQuery' 中提供的表名)

所以我创建了 SQL 中的所有表,但它们都填充了相同的信息。来自同一张表的信息(在变量中说明其名称的表)

谢谢,有什么建议吗?

4

2 回答 2

1

通过阅读链接的解决方案,它看起来要么不正确,要么缺少一个步骤。现在,屏幕截图 #14 指定了“来自变量的 SQL 命令”和“SelectQuery”作为变量源;我看不到 SelectQuery 的更新位置。

解决方案 1: 将 OLE DB Source 设置为“表名或视图名变量”,并将有问题的变量设置为 TableName(由 ForEach 容器每次迭代更新)

解决方案2:将SelectQuery改为表达式驱动变量,即"select * from " + @[User:TableName]

于 2012-04-11T21:10:16.643 回答
0

您确实意识到该示例中的表名必须与 excel 上的工作表名匹配,对吗?因此,您可能必须在访问时执行类似的操作。

另外,发布更多信息。您的表变量上的值似乎没有被更新。告诉我们应该如何。

于 2012-04-11T15:42:30.580 回答