declare @dbname sysname
要use master
alter database UFDATA_002_2017 set single_user ---------------这个不好使,可以用 《use master》 《 EXEC sp_dboption ‘UFDATA_002_2017‘, ‘single user‘, ‘TRUE‘》
dbcc checkdb (‘UFDATA_002_2017‘,repair_rebuild) ----------------修复数据库索引
dbcc checkdb (‘UFDATA_002_2017‘,repair_allow_data_loss) -------修复数据库
alter database UFDATA_002_2017 set multi_user -------或者 EXEC sp_dboption ‘dbname‘, ‘single user‘,‘FALSE‘
----------------------------------------------------------------
2、把数据库设置为单用户模式,直接在查询分析器中执行以下语句即可:
EXEC sp_dboption ‘dbname‘, ‘single user‘, ‘TRUE‘.
3、进入查询分析器执行如下语句:
《《《 ----use dbname 》》》
dbcc checkdb(‘dbname‘,repair_allow_data_loss)-------修复数据库
dbcc checkdb (‘dbname‘,REPAIR_REBUILD)----------------修复数据库索引
4、再执行:dbcc checkdb,检测数据库,出现结果为:
CHECKDB 发现了0个分配错误和 0个一致性错误(在数据库 ‘dbname‘ 中)。
数据库已经修复完毕。
5、取消单用户模式,即直接在查询分析器中执行以下语句即可:
EXEC sp_dboption ‘dbname‘, ‘single user‘,‘FALSE‘