Sql-Server

由於腳本組件,將 SSIS 包更新到 2014 時出錯

  • March 31, 2016

我正在嘗試更新包含腳本組件的 SSIS 包。腳本組件只獲取此處描述的錯誤描述。

我正在使用 SSDT 2015 中的更新嚮導,它應該與 SQL Server 2014 兼容。(ssdt

包更新嚮導執行後,我會收到有關每個具有腳本組件的數據流的警告和資訊。

警告 0x40016044:載入表 TableName:找到 SQL Server Integration Services 2012 腳本組件 TableName 錯誤描述需要遷移!

資訊 0x4001601a:載入表 TableName:TableName 錯誤描述已被遷移。必須保存包以保留遷移更改

這在我看來就像腳本組件已成功遷移。然後我建構包並將其部署到我的 SSIS 實例。

當我嘗試通過 SQL 代理或集成服務目錄在實例上執行包時,包驗證失敗並出現以下錯誤。

載入表 PersonDisability:Error: Microsoft.SqlServer.Dts.Pipeline.ComponentVersionMismatchException: 表名錯誤 Desc 的版本與此版本的 DataFlow 不兼容。

$$ [The version or pipeline version or both for the specified component is higher than the current version. This package was probably created on a new version of DTS or the component than is installed on the current PC. $$] 在 Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostCheckAndPerformUpgrade(IDTSManagedComponentWrapper100 包裝器,Int32 lPipelineVersion) 載入表 TableName:錯誤:“TableName 錯誤描述”的組件元數據無法升級到組件的較新版本。PerformUpgrade 方法失敗。

基於這些,如果消息是準確的,我有一個版本不匹配。我的實例是 2014 SP1 CU3 (12.0.4427.24),我進行包更新的 SSDT 是 2015(14.0.51128.0)

這些版本不兼容嗎?

VS 2010/VS 2012 => SQL Server 2012。

VS 2013 => SQL Server 2014。

VS 2015 => SQL Server 2016(目前,他們很快將能夠針對 SQL Server 2012+)

因此,您要麼需要使用 SSDT for VS 2013/SQL Server 2014 重做導入,要麼等到他們提供 SQL Server 的下一個候選版本,該候選版本將能夠針對特定版本的 SSIS

引用自:https://dba.stackexchange.com/questions/133872