症状
请考虑以下情况:
-
将 Microsoft SQL Server 2012 Service Pack 1 (SP1)应用于 Microsoft SQL Server 2012 Master Data Services (MDS)安装。
-
使用基于 MDS 实体的暂存过程更新属性值。
-
您尝试更新的基于域的属性之一已启用 "更改跟踪"。
在这种情况下,暂存过程将失败,并且你会收到以下错误消息:
消息50000、级别16、状态1、过程 udp_名称_Leaf、行 2182SYSERR245 |将 nvarchar 值 "" 转换为 int 数据类型时,转换失败。
注意占位符名称是创建实体时指定的暂存表的名称。
解决方案
累积更新信息
SQL Server 2012 SP1 的累积更新2
此问题的修补程序首次在累积更新2中发布。有关如何获取此累积更新包的 SQL Server 2012 Service Pack 1 的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2790947 SQL Server 2012 的累积更新包 2 Service Pack 1注意 由于这些版本是累积的,因此每个新的修复版本都包含以前的 SQL Server 2012 Service Pack 1 修复版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2772858 在发布 SQL Server 2012 Service Pack 1 之后发布的 SQL Server 2012 版本
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
更多信息
有关如何为数据库和表启用和禁用更改跟踪的详细信息,请转到以下 MSDN 网站: