数据库修复命令

转自: 邹建的专栏
sp_dboption '数据库名称', 'single user', 'true'
go
DBCC CHECKDB('数据库名称', REPAIR_REBUILD)
go
exec sp_msforeachtable 'DBCC CHECKTABLE(''?'',REPAIR_REBUILD)'
go
sp_dboption '数据库名称', 'single user', 'false'
go

/*--命令解释
sp_dboption:在指定数据库上执行一个特定的命令
                     本例用此切换单用户开关
DBCC CHECKDB:检查指定数据库中的所有对象的分配和结构完整性
                     REPAIR_FAST:进行小的、不耗时的修复操作,如修复非
                     聚集索引中的附加键。
                     这些修复可以很快完成,并且不会有丢失数据的危险。
                     REPAIR_REBUILD:执行由 REPAIR_FAST 完成的所有修复,
                     包括需要较长时间的修复(如重建索引)。
                     执行这些修复时不会有丢失数据的危险。
sp_msforeachtable:在当前数据库中指定的多个表或所有表中执行一条命令
DBCC CHECKTABLE('?',REPAIR_REBUILD):检查指定表或索引视图的数据、
                     索引及 textntextimage 页的完整性.
                     这里'?'指当前数据库中的所有表.
*/

你可能感兴趣的:(数据库)