我想将我的数据库从 SQL 2005 降级到 SQL 2000

我想将我的数据库从 SQL 2005 降级到 SQL 2000

我想将我的数据库及其所有视图和存储过程从 SQL 2005 降级到 SQL 2000,但问题是视图无法正确恢复。

答案1

只需使用 RedGate SQL Compare 和 RedGate SQL DataCompare 之类的工具即可同步不同版本之间的结构和数据库。

或者,更手动的方式只是在企业管理器中编写数据库中的所有对象脚本,然后使用它在 SQL 2005 上创建新数据库。然后在两个数据库之间导入/导出数据。

任何一种方法都假设您没有使用 sql2008 中引入的任何功能。

谢谢

谢恩

答案2

在SQL Server中,有数据库兼容性、数据库内部版本和SQL Server版本等概念。

SQL Server 在主数据库的启动文件中维护大量有关数据库的元数据(包括创建数据库的版本),当您将数据库连接到服务器并根据服务器的版本进行检查时,将读取此信息。请注意,此内部版本不同于 2000、2005 和 2008 等软件的版本。当将较低版本的数据库连接到较高版本(服务器)时,数据库的内部版本会立即升级,还原/连接会正常进行,但是当您将较高版本的数据库连接到较低版本的数据库时,SQL Server 会无法通过所需的验证。原因之一是,元数据和系统内部表和结构会从一个 SQL Server 版本更改为另一个版本,而较低版本无法处理较高版本的结构。

您可以使用以下命令非常轻松地检查此信息。

DBCC DBINFO 带有表结果

您需要查找 dbi_createVersion DBINFO STRUCTURE:DBINFO @0x467BEEE8 dbi_createVersion 655

SQL 服务器 7.0 : 515 SQL 服务器 2000 : 539 SQL 服务器 2005 : 611/612 SQL 服务器 2008 : 655

http://sqlblog.com/blogs/jonathan%5Fkehayias/archive/2009/07/28/database-version-vs-database-compatibility-level.aspx

http://technet.microsoft.com/en-us/magazine/2008.08.sqlqa.aspx

http://sankarreddy.spaces.live.com/Blog/cns!1F1B61765691B5CD!463.entry?sa=862852830

现在回到你的问题,你必须使用 SSIS 或其他第三方工具来编写对象和数据脚本。但我要问你为什么打算回到 2000 年?你遇到什么问题了吗?分享你的想法和问题,这样可能会更容易解决它们。

相关内容