一.还原从网上下载下来的数据库,在还原时出的问题:
*.MDF数据库不是有效的Microsoft磁带格式备份集,RESTORE DATABASE操作正常终止。
解决:
*.MDF文件是数据库设备文件,同时在一起的*.ldf文件是数据日志。这种数据文件要用“附加数据库”来还原。最好在路径中不要出现中文,也可能导致错误。
但是经过我的测试,有一种数据文件可以附加,就是DatabaseName_Data.MDF数据文件,可以正常附加。但是如果像DatabaseName.MDF类似的,就不能正常加载了。可能会出现下面的“错误602”问题。这个问题下面在讨论。
附加数据库方法:
1.打开数据库。
2.右键点击【数据库】,在选择【所有任务】,【附加数据库】。
3.加载自己的数据库,点击【确定】就可以了。一般是DB_Data.MDF数据文件的都能还原。
二.*.BAK数据库还原。*.BAK数据库是备份数据库。只要使用“还原数据库”就可以了。
具体的方法就简单说一下吧。
1.首先要创建一个新数据库,和你要还原的数据库名字相同(如DbName).
2.右键点击数据库名(如DbName),选择【所有任务】,【还原数据库】,在点击【从设备】,在点击【添加】,加载进来就可以了,在一路确定就可以啦。
这样的备份数据库很好还原的,一般不会出什么错误。
三.错误602:未能在sysindexes中找到数据库ID 12中对象ID 1的索引ID 1对应的行,请运行sysindexs运行DBCC CHECKTABLE.
主要是因为版本高的数据库向低版本数据库转换时,就会出错。解决方法如下:
解决方案:
因为数据库附加到2005的时候, 数据库文件已经自动升级到2005, 所以在2000下是无法再附加的(没有向上兼容的)直接restore或附加是不行的, 用脚本+导数据肯定没有问题。
2005转到2000的步骤步骤
1. 生成for 2000版本的数据库脚本
2005 的manger studio
-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例
-- 右键要转到2000的库
-- 任务
-- 生成脚本
-- 在"脚本向导"的"选择数据库"中, 确定选择的是要转到2000的库
-- 勾选"为所选数据库中的所有对象编写脚本"
-- 在接下来的"选择脚本选项"中, 找到"为服务器版本编写脚本"项, 选择"SQL Server 2000"
-- 其他选项根据需要设置
-- 最后把脚本保存到一个 .sql 脚本文件
2. 在2000中创建目标数据库
在查询分析器(或2005的manger studio在打开脚本文件), 连接到SQL Server 2000,执行上面生成的脚本.以创建一个新的数据库
3. 将数据从2005导到2000
2005 的manger studio
-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例
-- 右键要转到2000的库
-- 任务
-- 导出数据
-- 在"SQL Server 导入和导出向导"的"选择数据源"步骤中, 确定选择的是要导出的数 据库
-- 在"选择目标"步骤中, 连接到 2000, 并选择步骤2新建的库
-- 在"选择源表和源视图"中, 选择所有的表
-- 最后完成
这个方法我没有能用成,主要是在我的数据库中没有找到【对象管理器】。