我必须在SQL Server 2008中运行SQL Server 2000的备份。
从.bak
文件恢复数据库时,我收到了错误
指定演员表无效
在谷歌之后我觉得存在兼容性问题。因此,我想使数据库与SQL Server 2000兼容。
并运行以下查询
ALTER DATABASE DBNAME
SET COMPATIBILITY_LEVEL = 80
但没有任何帮助。任何帮助将不胜感激。
答案 0 :(得分:1)
您无法执行此操作 - 您无法将数据库从SQL Server的较新版本(如2008)附加/分离或备份/还原到旧版本(如2000) - 内部文件结构太不相同,无法支持向后兼容性。
您可以通过
解决此问题在所有计算机上使用相同版本的SQL Server - 然后您可以在实例之间轻松备份/恢复数据库
否则,您可以在SQL Server Management Studio(Tasks > Generate Scripts
中为结构(表,视图,存储过程等)和内容(表中包含的实际数据)创建数据库脚本)或使用第三方工具
或者您可以使用Red-Gate的SQL Compare和SQL Data Compare之类的第三方工具在源和目标之间进行“差异化”,根据这些差异生成更新脚本,然后在目标平台上执行这些脚本;这适用于不同的SQL Server版本。
答案 1 :(得分:0)
更改兼容性级别会让您更接近SQL 2000但是有一些重大变化(更有可能是它们在2005年出现时),不幸的是,您需要找到中断的地方并手动修复它们。
Ed