BIML Scripts再次尝试生成包失败,并且没有更改文件

时间:2020-05-19 22:15:04

标签: ssis biml

首次发布问题时,如果我没有足够的信息,请原谅。 我有一个具有以下几层的分层BIML脚本:

  • 10个连接–创建连接节点
  • 20-模型–遍历连接以建立数据库,表节点
  • 30个创建/删除登台表–包含此表是因为需要在其余创建过程之前运行软件包。
  • 30-平面文件–循环遍历表对象以创建平面文件格式和连接
  • 40个包–遍历表对象并创建提取和加载包
  • 45-项目参数和连接-附加项目参数和连接(使用命名的连接和来自10-Connections的GUID)。在SSIS中手动创建的项目参数。

该过程成功连接到源SQL Server数据库,生成具有正确元数据的“创建/删除登台表”程序包,并将在第一次成功创建提取程序包。

再次尝试处理相同的BIML脚本而不对文件进行任何更改时,该过程失败,并显示“对象引用未设置为对象的实例”。 &OleDBSource节点上的“无法查询连接”。

在预览和输出调试中生成的BIML文件具有有效的查询和源元数据,它们指示肯定的连接和正确的模型。我在SSMS中使用了发出的查询,没有错误。当我将BIML文件移动到新项目时,该过程第一次成功,随后失败。

我尝试了以下方法:

连接管理器

  • 在重新生成软件包之前删除项目连接管理器
  • 在PackageProject和Packages节点中注释和使用的GUID。
  • 延迟验证/验证外部元数据–我曾在Package,DFT和OleDBSource上使用true和false进行尝试

项目

  • 从目录中删除.proj文件
  • 将PackageProject定向到新的ProjectSubpath

我还尝试对BimlScript进行简单的硬编码,以简化和删除具有相同结果的所有变量。

最令人发疯的一点是,元数据和查询都表明该过程可以连接并查询此确切的表及其功能,但仅在初始创建时才起作用。在测试期间添加或重新生成失败。有人遇到过吗?

非常感谢Billinkc的cathrine-wilhelmsen,他的帖子和教程非常有帮助。任何和所有帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我将驱动程序从SQLNCLI11更改为SQLOLEDB,而无需更改代码。在看到一些使用不同驱动程序的示例连接字符串后,我测试了不同的驱动程序。

我希望我能解释为什么。