症状
请考虑以下情形:
- 你是 Microsoft SQL Server 2016 的用户。
- 您有一个在启用系统版本控制之前或启用期间进行分区的时态表。
- 配置自动创建 (匿名或默认) 历史记录表。
- 关闭系统版本控制,然后对历史记录表运行 ALTER TABLE SWITCH PARTITION 语句。
在此方案中,你将收到类似于以下内容的断言错误:
注意
消息 3624,级别 20,状态 1, 行号
系统断言检查失败。 查看 SQL Server 错误日志了解详细信息。 断言失败通常是由软件 bug 或数据损坏导致的。 若要检查数据库损坏,请考虑运行 DBCC CHECKDB。 如果你同意在安装过程中向 Microsoft 发送转储,则将向 Microsoft 发送一个小型转储。 更新可能来自 Microsoft 的最新服务包或技术支持的修补程序中提供。
消息 596,级别 21,状态 1, 行号
无法继续执行,因为会话处于终止状态。
消息 0,级别 20,状态 0, 行号
当前命令上发生严重错误。 如果有结果,应丢弃。
解决方法
此问题的修补程序包含在以下更新中:
关于 SQL Server 2016 内部版本
SQL Server 2016 的每个新内部版本都包含先前内部版本中包含的所有修补程序和所有安全修补程序。 建议安装 SQL Server 2016 的最新版本。
状态
Microsoft 已确认在 "适用于" 部分中所列的 Microsoft 产品中存在问题。
参考资料
了解 Microsoft 用于描述软件更新的 术语 。