本帖最后由 whmsh 于 2021-10-22 15:28 编辑
自己网上买的数据库修复增强工具,现转发到这里。适当收点币。希望能帮到大家!希望能用!
另整理了一些数据库修复的语句供大家参考:
use master
declare @databasename varchar(255)
set @databasename='UFDATA_113_2019' ------报错账套名称
exec sp_dboption @databasename, N'single', N'true' --将目标数据库置为单用户状态
dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb(@databasename,REPAIR_REBUILD)
exec sp_dboption @databasename, N'single', N'false'--取消目标数据库单用户状态
或
若是DBCC CHECKDB 检查仍旧存在错误,能够使用DBCC CHECKTABLE来修复。如下
use 须要修复的数据库实体的名称
declare @dbname varchar(255)
set @dbname='须要修复的数据库的名称'
exec sp_dboption @dbname,'single user','true'
dbcc checktable('须要修复的数据表的名称',REPAIR_ALLOW_DATA_LOSS)
dbcc checktable('须要修复的数据表的名称',REPAIR_REBUILD) -把’ 须要修复的数据表的名称’更改成执行DBCC ECKDB 时报错的数据表的名称
exec sp_dboption @dbname,'single user','false'
最后用DBCC DBREINDEX (表名,’’) 修复此表全部的索引、用DBCC CHECKALLOC 检查指定数据库的磁盘空间分配结构的一致性!
|