【问题标题】:ForEach Loop Container connundrumForEach 循环容器难题
【发布时间】:2016-07-14 20:01:45
【问题描述】:

我在一个目录中有多个 .csv 文件。

我创建了一个 ForEach 循环容器,它将循环遍历目录中的每个文件。

问题是我有一个插入 csv 到数据库中,并且目标数据库表由 SSIS var tblName 定义,在 foreach 容器启动并用文件路径字符串填充 var CurrentFile 之前它为空。 出现问题是因为未声明此 var,因此 OLDBC 连接在查找具有空标题的表时将无法工作。 在与数据库建立连接之前,有什么方法可以强制 for each 循环开始?

【问题讨论】:

  • 是将每个 CSV 文件的内容导入到同一个数据库表中,还是尝试将每个 CSV 文件导入到多个数据库表中,每个表的名称与源 CSV 文件的名称相似?
  • 您还可以尝试在每次循环时动态更改 OLE DB 连接管理器的连接字符串值。即,首先为 tblName 变量定义一个非 NULL 的实际值。然后在连接管理器下的 ConnectionSring 表达式中应用它。在表达式中,您将使用 tblName 变量替换目录值。这样,连接管理器的目录表名称会随着 tblName 的值随着循环的每次通过而变化而动态变化。

标签: ssis


【解决方案1】:

如果要加载到单个表中,请尝试验证外部元数据选项 false

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-08
    • 2021-12-27
    相关资源
    最近更新 更多