解决方法:
1、把需要附加的数据库的MDF文件改名;
2、建一个相同的数据库。库文件名称为要附加的数据库名。
3、打开服务管理器(通常情况下应该在托盘),停止服务
3、将新建的数据库文件的MDF文件删掉,并将原有的数据库mdf文件该为原来的名字
4、重启sql server服务 ,此时数据库变为置疑状态
5、执行以下语句:
sp_configure 'allow updates', 1 reconfigure with override
update sysdatabases set status='32768' where name='databasename'
DBCC rebuild_log ('databasename','日志路径\databasename.ldf')
update sysdatabases set status='0' where name='databasename'
sp_configure 'allow updates', 0 reconfigure with override
重置数据库异常状态命令
sp_resetstatus 'database_name'
以上的代码需要逐行运行
到此时,表面上数据库没有什么问题了,实际上此时数据库处于回避恢复模式。
新建一数据库,将原来的数据导入到新建的数据库中,完毕后将原来的数据库删除,新建,
然后将数据重新导入,就行了。
需要注意的是,SQL在进行数据导入导出的时候,原始表的主建信息会丢掉,所以需要注意以下。