解决方案: |
1、acc用数据库中提供的修复命令直接执行即可;
2、sql
1在运行修复数据库语句之前应必须先将数据库处于单用户模式下才可以进行修复:
sp_dboption @dbname = ‘database_name‘
, @optname = ‘single user‘
, @optvalue = ‘true‘
use database_name
go
2执行修复数据库语句:须反复多次执行该修复数据库语句,直到检测结果为“CHECKDB 发现了 0 个分配错误和 0 个一致性错误在数据库 ‘datebase_name‘ 中”方可执行完毕。
DBCC CHECKDB
‘database_name‘,REPAIR_ALLOW_DATA_LOSS
3在运行修复数据库语句之后还必须将数据库还原为非单用户模式,执行下面语句:
sp_dboption @dbname = ‘database_name‘
, @optname = ‘single user‘
, @optvalue = ‘false‘
use database_name
go
注意:在全部语句执行完毕后,可再用检查数据库语句 dbcc checkdb ‘database_name‘ 对其检测,若仍存在问题,需反复执行修复数据库语句。执行修复语句后必须将数据库还原为非单用户模式。
特别提示:由于在执行该修复数据库语句的过程中存在丢失数据的风险,请慎重使用!敬请您在使用该修复语句之前一定要作好数据备份工作!! |