应用对象
SQL Server 2008 Developer SQL Server 2008 Enterprise SQL Server 2008 Standard SQL Server 2008 Standard Edition for Small Business SQL Server 2008 Workgroup SQL Server 2008 R2 Service Pack 2 SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2008 R2 Workgroup SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

症状

请考虑以下情况:

  • 你的数据库使用的是 Microsoft SQL Server 2008、SQL Server 2008 R2、SQL Server 2012 或 SQL Server 2014 中的 BULK_LOGGED 或 简单 恢复模型。

  • 打开 " 设置 XACT_ABORT " 开关。

  • 尝试在单个分布式事务中运行多个 批量插入 语句。

在此方案中, BULK INSERT 语句可能失败,并且你收到以下错误消息:

位置: pageref:913Expression: IS_OFF (BUF_MINLOGGED,m_buf->bstat) | |pageModifyType! = PageModifyType_Contents | |GetPagePtr ()->IsTextPage () SPID: 56Process ID: 2136Msg 3624、Level 20、State 1、Line 7A 系统断言检查失败。 有关详细信息,请查看 SQL Server 错误日志。 通常,断言失败由软件错误或数据损坏导致。 若要检查数据库是否损坏,请考虑运行 DBCC CHECKDB。 如果你同意在安装期间将转储发送到 Microsoft,则会向 Microsoft 发送一个小转储。 从 Microsoft 的最新服务包中或从技术支持的 QFE 中,可能会提供更新。消息0,级别20,状态0,行0当前命令出现严重错误。 应丢弃结果(如果有)。

此外,还可能会在 SQL Server 日志文件夹中生成一个小型转储文件。 注意 当使用 SQL Server Integration Services (SSIS)时,通常会出现此问题。 例如,如果TransactionOption程序包级别属性设置为 "必需",则 Microsoft 分布式事务协调器(MS DTC)涉及开始分布式事务和设置 XACT_ABORT ON

原因

出现此问题的原因是 SQL Server 2008、SQL Server 2008 R2、SQL Server 2012 或 SQL Server 2014 中的错误。

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

解决方法

若要解决此问题,请将数据库设置为 完整 恢复模型。

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

参考

有关 " 设置 XACT_ABORT " 设置的详细信息,请访问以下 Microsoft 开发人员网络(MSDN)网站:

有关 "设置 XACT_ABORT" 设置的常规信息有关最少记录的操作的详细信息,请访问以下 MSDN 网站:

有关最少记录的操作的常规信息有关如何使用事务维护数据完整性的详细信息,请访问以下 MSDN 网站:

有关如何使用事务维护数据完整性的常规信息有关 SQL Server 的增量服务模型的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

935897 从 SQL Server 团队提供的增量服务模型可提供报告问题的修补程序有关 SQL Server 更新的命名架构的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

822499Microsoft SQL Server 软件更新程序包的新命名架构有关软件更新术语的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

824684 用于描述 Microsoft 软件更新的标准术语的说明

需要更多帮助?

需要更多选项?

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