备份恢复一下吧。怎么这么喜欢分离附加。。。
执行语句试试
EXEC sp_attach_single_file_db @dbname = 'pubs', @physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'
备份的数据库的索引是不是有问题 先检查索引