2010-01-13 73 views
1

我在filegroup1表1和当我使用“SELECT * FROM table1的”查询然后 错误消息出来SQL Server 2008中的文件组问题

查询处理器不能产生一个计划表或视图' table1',因为该表位于不在线的文件组中。

什么是解决方案

回答

1

有一些原因,你得到这个错误。 首先,如果您的文件组具有损坏或缺失的数据文件,则会发生错误,因此您可能需要先检查该文件。

您可以检查sys.databases的state_desc列。如果这表示RECOVERY_PENDING,则需要将丢失(或损坏)的文件设置为脱机状态,然后才能使数据库联机并运行。

ALTER DATABASE userDB MODIFY FILE (NAME=’damagedFile’, OFFLINE) 

,然后把数据库联机:

ALTER DATABASE userDB SET ONLINE 

,它应该工作,但没有你损坏的文件。 如果您有备份,您可以从那里恢复损坏的文件。