Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 带有ODBC源代码的SSIS包在TargetServerVersion为2017时工作,但不';我什么时候上班_Sql Server_Ssis_Odbc_Visual Studio 2019 - Fatal编程技术网

Sql server 带有ODBC源代码的SSIS包在TargetServerVersion为2017时工作,但不';我什么时候上班

Sql server 带有ODBC源代码的SSIS包在TargetServerVersion为2017时工作,但不';我什么时候上班,sql-server,ssis,odbc,visual-studio-2019,Sql Server,Ssis,Odbc,Visual Studio 2019,我们有一个带有ODBC源的SSIS包,用于从DB2数据库提取数据。此软件包在Visual Studio 2017和TargetServerVersion SQL Server 2017中运行良好。当我们尝试在Visual Studio 2019和TargetServerVersion SQL Server 2019中运行此包时,它失败了 即使我们从头开始创建一个SSIS项目,并尝试在VS2019中使用ODBC源访问DB2,仍然会失败 我们已经尝试了一些其他的事情,比如改变批量大小。取决于源表,如

我们有一个带有ODBC源的SSIS包,用于从DB2数据库提取数据。此软件包在Visual Studio 2017和TargetServerVersion SQL Server 2017中运行良好。当我们尝试在Visual Studio 2019和TargetServerVersion SQL Server 2019中运行此包时,它失败了

即使我们从头开始创建一个SSIS项目,并尝试在VS2019中使用ODBC源访问DB2,仍然会失败

我们已经尝试了一些其他的事情,比如改变批量大小。取决于源表,如果我们将批处理大小设置为1,它可以工作,但不是所有表都可以。使用默认的批处理大小(1000),数据流似乎可以工作,但会收到一条错误消息,并且行数不等于源表的行数:

如果我们在VS2019中创建SSIS项目,但将TargetServerVersion设置为SQL Server 2017,则该项目可以运行,但我们的生产服务器是SQL Server 2019

Visual Studio信息: 微软Visual Studio专业版2019 版本16.10.0 VisualStudio.16.Release/16.10.0+31321.278 Microsoft.NET框架 版本4.8.04084

SQL Server Analysis Services 15.0.19526.0 微软SQL Server分析服务部 版本15.0.19526.0

SQL Server数据工具16.0.62105.04180 Microsoft SQL Server数据工具

SQL Server集成服务15.0.2000.166 Diseñador de MS SQL Server集成服务 版本15.0.2000.166

SSMSVS1.0集成

有解决办法吗

谢谢

更新更多信息:

SQL Server集成服务项目扩展版本3.13.1


DB2数据库(AS/400,版本7)和我正在使用iSeries Access ODBC驱动程序13.00.01.00(v7r2m0)。

安装最新版本的IBM I Access ODBC驱动程序时问题已解决:13.64.25.00

您收到的错误消息是什么?无论如何,如果您将2017年的目标包部署到SQL Server 2019,这并不重要。这是我收到的唯一错误消息:“[SSIS.Pipeline]错误:SSIS错误代码DTS_E_PRIMEOUTPUTFAILED。Origen ODBC上的PrimeOutput方法返回错误代码0x80004005。当管道引擎调用PrimeOutput()时,该组件返回失败代码。故障代码的含义由组件定义,但错误是致命的,管道已停止执行。在此之前可能会发布错误消息,其中包含有关故障的详细信息。”请单击底部的状态行文本,或者在顶部栏的“进度”按钮上,获取流程步骤的详细概述以及发生的每个信息、警告和错误。我做到了。该消息是“进度”部分中唯一的错误或警告。由于它似乎处理大多数表和记录,因此它只应与数据或权限相关。我将创建一个错误输出目标(简单地转储到派生列中),并在错误管道上启用Data Viewer。这应该能让你知道哪些记录失败了,也许还能给你一个线索,说明为什么它们会失败。