我们有多个 SSIS 包,可将数据从 Excel 导入到 SQL Server 并将结果导出回 Excel。所有这些 SSIS 包都是在 VS 2012 中设计的,连接到 SQL Server 2012 和 Excel 2013,我们可以将其作为 SQL Server 代理作业的一部分或作为集成服务中的独立包成功运行。
我们最近将其中一些包迁移到新的 SQL Server 2022 计算机,将它们升级到最新版本的 VS 2022,对于 Excel,我们已升级到 Excel 2016。升级后的包不会引发任何错误,可以连接到所有源来自包内的 Visual Studio。我们能够运行将数据从 Excel 导入到 SQL Server 2022 的包 - 因此所有组件都已就位并正常运行,但是当我们尝试运行将数据导出到 Excel 的 SSIS 时 - 不会出现错误,包只是失败。
尝试从集成运行它 - 相同,没有错误;尝试记录错误 - 收到包启动的消息,然后它无缘无故地爆炸。如果我在旧服务器上运行测试包,指向新服务器(从 SQL Server 2022 导出数据) - 它在集成下或作为 SQL Server 代理作业运行良好(在同一帐户下运行,导出到相同位置)一个新的服务器 - 所以它不可能是安全/访问问题)。我曾尝试手动导出并将其记录为新的 SSIS 包 - 导出手动运行一次,但是当我尝试运行新创建的包时 - 获得相同的锁定,然后轰炸该包,也没有错误。
SQL Server 2022 可能缺少什么,或者 VS2022 或 Excel 2016 特有什么?我尝试了在网上找到的所有建议 - 没有任何效果。我们已经多次重新安装 Integration 和 Excel。
我们注意到的一个区别 - 在旧服务器上,我们可以通过在文件资源管理器中浏览到包来运行包,右键单击并使用 Integration Services Package Execution Utility 运行它,在新服务器上,该选项不起作用(已安装实用程序)。
有什么技巧可以让它发挥作用吗?谢谢!
类似的问题。从 2022 年开始导出到 Excel。在向导中,我告诉它导出到 X:\MyFolder\MyFile.XLS,但是当我选择数据源 qryExportThis 时,它给出的目标是“qryExportThis”。我必须用 Excel 文件的路径和名称覆盖目标。在“编辑设置”弹出屏幕上,仅显示“创建目标表”选项。它仍然假设我正在导出到表。它已经忘记了 Excel。粗略翻译一下:它坏了。 我(到目前为止)无法运行我创建的 DTSX 文件。我每次都必须手动导出。