/*准备工作:
1、用易信达软件新建一个同名的数据库(如wp) ;
2、停止SQL,用原来的文件替换,删除Log文件;
3、启重SQL;
4、再执行下面的脚本 ;
*/
--第一步:执行完后重启SQL
Use Master
Go
sp_configure 'allow updates', 1
reconfigure with override
GO
begin tran
update sysdatabases set status = 32768 where name = 'EST'
commit tran
GO
--第二步:执行完后重启SQL
DBCC TRACEON (3604)
DBCC REBUILD_LOG('EST','R:\mssqldata\EST_Log.ldf')
GO
--第三步:执行完后重启SQL
use master
update sysdatabases set status = 8 where name = 'EST'
Go
sp_configure 'allow updates', 0
reconfigure with override
GO
--第四步:
Declare @databasename varchar(50)
Select @databasename ='EST' --要修复的数据库名;
exec sp_dboption @databasename, N'single', N'false'
exec sp_dboption @databasename, N'single', N'true'
-----在查询分析器master里,进行修复数据库
-- dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb(@databasename,REPAIR_REBUILD)
------还原数据库状态
exec sp_dboption @databasename, N'single', N'false'
dbcc checkdb('EST' )