错误 #: 190225 (内容维护) VSTS: 1400367

症状

通过使用 Microsoft SQL Server 2008 R2 或 Microsoft SQL Server 2008年的数据库中的文件的逻辑名称运行dbcc shrinkfile语句时,您可能会收到以下错误消息︰

Msg 8985,级别 16 状态 1,第 2 行在 sys.database_files 中找不到文件 test_log_issue_log 的数据库 test。文件不存在,或已被删除。

解决方案

服务包的信息

若要解决此问题,请应用 Microsoft SQL Server 2008 SP4。有关如何获取 SQL Server 2008 SP4 的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章︰

2979596 SQL Server 2008 Service Pack 4 版本信息

修补程序信息

SQL Server 2008 sp3 修复程序

可以从 Microsoft 获得受支持的修复程序。然而,此修补程序仅用于解决本文中描述的问题。仅对出现这一特定问题的系统应用此修补程序。如果此修复程序可供下载,则在此知识库文章顶部"提供修补程序下载"部分。如果未显示此部分,将申请提交到 Microsoft 客户服务和支持,以获取此修复程序。注意:如果出现其他问题或需要任何故障诊断时,您可能需要创建单独的服务请求。对于不符合此特定的修补程序的其他支持问题和事项将照常收取费用。有关 Microsoft 客户服务和支持电话号码或创建单独的服务请求的完整列表,请访问下面的 Microsoft 网站︰

http://support.microsoft.com/contactus/?ws=support注意:"修补程序下载可用"窗体显示获取此修复程序的语言。如果看不到您的语言,则修补程序没有那种语言的版本。

累积更新信息

SQL Server 2008 R2 Service pack 2 的累积更新 8

累积更新 8 中首次发布此问题的修补程序。有关如何为 SQL Server 2008 R2 Service Pack 2 中获取此累积更新包的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章︰

2871401累计更新 SQL Server 2008 R2 Service Pack 2 包 8注意:生成是累积性的因为每个新修补程序版本包含的所有修补程序,包含上一个 SQL Server 2008 R2 Service Pack 2 的所有安全修补程序的修补都程序版本。我们建议您考虑将应用包含此修复程序的最新的修补程序版本。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

SQL Server 2008 R2 生成 SQL Server 2008 R2 Service Pack 2 发布后发布的2730301

状态

Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。

解决方法

若要变通解决此问题,请使用dbcc shrinkfile语句中的 file_id。若要获取一个文件的 ID,使用FILE_IDEX系统函数或查询当前数据库中的sys.database_files目录视图。

详细信息

有关如何使用dbcc shrinkfile语句的详细信息,请转到以下 TechNet 网站︰

如何使用"dbcc shrinkfile"语句有关如何使用FILE_IDEX系统功能的详细信息,请转到以下 TechNet 网站︰

如何使用 FILE_IDEX 系统函数

Author: troymoen; jannawWriter: v-shysun技术审阅︰ troymoen; bfong; ajayj; jannawEditor: v-mordew

需要更多帮助?

需要更多选项?

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

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