【问题标题】:migrating ssdt project from visual studio 2012 to 2017 cdc source not opening将 ssdt 项目从 Visual Studio 2012 迁移到 2017 cdc 源未打开
【发布时间】:2017-12-20 09:36:08
【问题描述】:

我们将包从 Visual Studio 2012 迁移到 2017 ssis工具箱中没有cdc源码组件:

cdc 源组件如下所示:

而且也打不开。

如果我创建一个新的 Visual Studio 2017 项目,它在 ssis 工具箱中有 cdc 源组件:

我可以使用它:

【问题讨论】:

  • 如果你能发一张升级操作结果的截图(升级后的HTML页面),我可以更澄清问题。
  • 我认为这是 Microsoft Connect 的活动线程。还没修复
  • @dangalg 你能提供升级报告吗?
  • 请按照@Hadi 的建议进行操作 - “创建一个包含具有相同配置的 CDC Source 的 ssis 2017 包,并使用文本编辑器打开两个 dtsx 文件(新包和升级包),然后比较 CDC Source" 的两种 XML 语法。我会添加 - 在这里发布两个 XML 片段。也许这个问题可以通过修改 XML 文档手动修复。

标签: sql-server visual-studio ssis ssis-2012 ssis-2017


【解决方案1】:

我对这个问题进行了一些研究,发现有些人只需将包的目标版本从 2012 年更改为 2016 年,就可以成功迁移包。看看this blog post 看看它的实际效果。

【讨论】:

  • 这是正确的答案,只需要更改目标版本,如博客文章所示。谢谢!!!!
  • 这个有问题。当我们这样做时,我们后来注意到任务脚本已变为空
【解决方案2】:

一些可以让你走上正确道路的建议

首先,把升级结果贴出来比较好,这样可以更清楚的说明问题。此外,升级操作并不总是 100% 有效,升级包后我遇到了很多问题,这在很多时候导致从头开始重新创建包。

(1) 比较两个包的 XML

.dtsx 文件是用 XML 编写的

我可以建议一件事,创建一个包含具有相同配置的 CDC 源的 ssis 2017 包,并使用文本编辑器打开两个 dtsx 文件(新包和升级包),然后比较 CDC Source 的两种 XML 语法,我可以引导您找到问题原因

(2) 比较两个包的属性

比较 PackageFormatVersion、VersionBuild 和其他属性可能会导致问题

还尝试比较两个包的版本信息,所以从PackageFormatVersion (如果两个包之间相同,则意味着它们都针对 SQL Server 2012,因此您需要更改目标版本解决方案属性) 和其他字段,如果有任何差异或可能导致您遇到问题。

在我对以下问题的回答中阅读有关获取包信息的更多信息:Automate Version number Retrieval from .Dtsx files

还可以在 Microsoft article - Integration Services 项目部分中的版本定位中阅读有关更改目标版本的更多信息


如果上述建议失败

如果第一个建议都没有引导您找到问题原因,我没有找到确切的原因。但是我发现一些链接在升级 SQL Server 或部署在具有不同 SQL Server 版本的机器上时显示了一些问题 - 我不能肯定这是 100% 正确 -但我认为有很多关于 CDC 的问题是微软没有解决的。

您可以从以下链接中看到这一点:

【讨论】:

  • 非常详细的回答,但是在尝试了您发布的每个链接之后,我的问题仍然没有解决。
猜你喜欢
  • 2018-08-01
  • 2017-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-20
  • 1970-01-01
相关资源
最近更新 更多