症状
设想 您使用的是 Microsoft SQL Server 2016。 当运行 ALTER 命令进行更改时 数据库范围的配置,还使用函数 fn_dblog 检索 已修改数据库行,则可能会收到断言错误。 下面是 用于更改数据库范围内配置参数的命令之一。
更改数据库范围配置集 PARAMETER_SNIFFING = 关闭;
此外,邮件类似于 SQL Server 错误日志中记录了以下错误。
<DateTime> spid<n> 使用 "dbghelp" 版本 "4.0.5"
<DateTime> spid<n> * * 转储线程-spid = 0,EC = 0x0000028909775730
<DateTime> spid<n> * * * 堆栈转储正在发送到 <FilePath\FileName> \sqldump<nnnnn> .txt
<DateTime> spid<n> * *******************************************************************************
<DateTime> spid<n> *
<DateTime> spid<n> * 开始堆栈转储:
<DateTime> spid<n> * <DateTime> spid <spid>
<DateTime> spid<n> *
<DateTime> spid<n> * 位置: medutil:LineNumber
<DateTime> spid<n> * 表达 ;
<DateTime> spid<n> * spid <SPID>
<DateTime> spid<n> * 进程 标识号 <PID>
<DateTime> spid<n> * 介绍 无效开关值
状态
Microsoft 已经确认这是一个列于“适用范围”部分的 Microsoft 产品问题。
解决方案
在 SQL Server 的以下累积更新中修复了此问题:
关于 SQL Server 的累积更新:
SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看 SQL Server 的最新累积更新:
参考
了解Microsoft 用于描述软件更新的术语。