应用对象
SQL Server 2008 R2 Service Pack 2 SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Developer SQL Server 2008 R2 Standard

症状

假设你尝试使用大容量复制程序(BCP)实用工具将数据从 Microsoft SQL Server 2008 R2 实例导出到数据文件。 但是,当 BCP 实用工具提取多行数据时,将发生错误。 例如,在 SQL Server 错误日志中生成以下 "824" 错误:

日期时间 spid51 错误:824,严重性:24,状态:2。 SQL Server 的日期时间 spid51 检测到基于逻辑一致性的 i/o 错误:不正确的 pageid (应为 1:43686; 实际0:0)。 在读取页面(1:43686)期间,在文件 "FilePath\Filename" 的偏移0X0000001554C000 处的数据库 ID 23 中出现此错误。 SQL Server 错误日志或系统事件日志中的其他消息可能提供更多详细信息。 这是威胁数据库完整性的严重错误情况,必须立即更正。 完成完整数据库一致性检查(DBCC CHECKDB)。 此错误可能由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。

在这种情况下,BCP 实用工具错误地返回值 "0",这表示数据导出操作成功。注意此问题仅影响 BCP 实用工具。 其他批量插入方法正确处理错误消息。

解决方案

累积更新信息

SQL Server 2008 R2 Service Pack 2 (SP2)的累积更新5

此问题的修补程序首次在累积更新5中发布。有关如何获取适用于 SQL Server 2008 R2 S2008 R2 SP2 的累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2797460 SQL Server 2008 R2 的累积更新程序包5(R2 S2008 R2 SP2)注意 由于这些版本是累积的,因此每个新的修复版本都包含了以前的 SQL Server 2008 R2 S2008 R2 SP2 修复版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2730301 发布 SQL Server 2008 R2 Service Pack 2 后发布的 SQL Server 2008 R2 版本

状态

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

更多信息

有关如何对 SQL Server 中的 "824" 错误进行故障排除的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2015756 如何解决 SQL Server 中的 Msg 824有关如何在 Microsoft SQL Server 2008 R2 中使用 BCP 实用工具的详细信息,请转到以下 MSDN 网站:

如何在 SQL Server 2008 R2 中使用 BCP 实用工具

需要更多帮助?

需要更多选项?

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