使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

症状

假设您在 Microsoft SQL Server 实例中有一个启用了 FILESTREAM 的数据库。 启动事务并使用 SqlFileStream .NET API 打开 Filestream 文件时,该任务可能失败并由于外部因素而引发异常。

如果在同一事务中使用 SqlFileStream 再次打开文件并提交,则可能会收到类似于以下内容的内部错误消息:

日期时间spid、未知、错误: 5571<c/> 严重性: 23<c/> 状态:3。日期时间spid、未知、内部 FILESTREAM 错误:无法访问垃圾回收表。

如果你运行 dbcc checktable ("sys.filestream_tombstone_2073058421"),可能会收到以下错误消息:

消息8951、级别16、状态1、行 LineNumber

表错误:表 dbcc checktable (' sys.filestream_tombstone_2073058421 ')   (ID IDNumber)。 在索引 "FSTSNCIdx" (IDIDNumber)中,数据行没有匹配的索引行。 索引行匹配的键可能丢失或无效:

解决方案

适用于此问题的修复程序包含在 SQL Server 的以下更新中:

SQL Server 2017 累积更新13         

SQL Server 2014 的累积更新 1 Service Pack 3

SQL Server 2014 的累积更新 15 Service Pack 2

关于 SQL Server 内部版本

SQL Server 的每个新版本都包含上一版本中的所有修补程序和安全修补程序。 我们建议你为你的 SQL Server 版本安装最新版本:

SQL Server 2017 内部版本

SQL Server 2014 内部版本

解决方法

要解决此问题,请使用 DBCC CHECKTABLE 命令重新生成数据库索引。

状态

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

参考

了解 Microsoft 用于描述软件更新的标准 术语

需要更多帮助?

需要更多选项?

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

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×