应用对象
SQL Server 2008 Service Pack 3 SQL Server 2008 Enterprise SQL Server 2008 Developer SQL Server 2008 Express SQL Server 2008 Standard SQL Server 2008 R2 Service Pack 2 SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

症状

假定您具有 Microsoft SQL Server 2008年服务包 3 (SP3),SQL Server 2008 R2 Service Pack 2 (SP2),SQL Server 2012 Service Pack 2 (SP2),SQL Server 2012年服务包 1(SP1),或在一台计算机上安装 SQL Server 2014年。当调用sp_MScreatemergedynamicsnapshot存储过程来创建动态快照时,您会收到以下错误消息︰

Msg 8115,级别 16 状态 2,过程 sp_MScreatemergedynamicsnapshot 线 182将表达式转换为数据类型 nvarchar 算术溢出错误。Msg 20655、 级别 16、 状态 1、 过程 sp_MScreatemergedynamicsnapshot,行 186该分区的快照进程无法完成。无法从分发数据库中的 MSsnapshot_history 表中检索的最大时间戳信息。确保标准快照处于最新状态并可用。Msg 20628、 级别 16、 状态 1、 过程 sp_MScreatemergedynamicsnapshot,行 203未能生成动态快照。

注意:Agent_id值超过 99999 MSdynamicsnapshotjobs表中的时,会出现此问题。

原因

在 SQL Server 中的缺陷会出现此问题。Agent_id的本地变量的类型是一个字符,并且其长度为 5。当 SQL Server 处理分配给INT类型的值,则可能会出现算术溢出。

SQL Server 的每个新累积更新包含以前的累积更新所包含的所有修补程序和所有安全修补程序。查看 SQL Server 的最新累积更新:

修补程序信息受支持的修补程序现已从 Microsoft 推出。但是,它旨在纠正本文介绍的问题。它仅应用于正经历此特定问题的系统。若要解决此问题,请联系 Microsoft 客户支持服务以获取此修复程序。有关 Microsoft 客户支持服务的电话号码和有关支持费用的信息的完整列表,请访问下面的 Microsoft 网站︰

http://support.microsoft.com/contactus/?ws=support注意: 在特殊情况下,如果 Microsoft 支持专业人员确定某个特定的更新能够解决您的问题,可能取消的通常情况下收取的电话支持服务费用。照常收取支持费用将应用于其他支持问题和对于特定更新无法解决的问题。

状态

Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。