Sql server 将SQL Server 2008转换为2000

Sql server 将SQL Server 2008转换为2000,sql-server,sql-server-2008,sql-server-2000,Sql Server,Sql Server 2008,Sql Server 2000,我希望将一个转换为2008格式的数据库转换回2000格式。我已经尝试了SQLServerManagementStudio中可用的所有方法。导出数据、脚本数据库,所有这些都失败了。导出似乎无法导出所需的所有内容,并且生成的脚本总是包含错误。数据库太大了,不可能在生成的脚本中找到错误 有人有什么建议吗。您可以使用SSIS/DTS(向导或手动)或SMO进行导出/导入。 或者使用第三方比较工具,如 没有降级选项也许你应该换个方向。在SQL 2000上创建一个新的空白数据库,并使用导入功能从SQL 200

我希望将一个转换为2008格式的数据库转换回2000格式。我已经尝试了SQLServerManagementStudio中可用的所有方法。导出数据、脚本数据库,所有这些都失败了。导出似乎无法导出所需的所有内容,并且生成的脚本总是包含错误。数据库太大了,不可能在生成的脚本中找到错误


有人有什么建议吗。

您可以使用SSIS/DTS(向导或手动)或SMO进行导出/导入。 或者使用第三方比较工具,如


没有降级选项也许你应该换个方向。在SQL 2000上创建一个新的空白数据库,并使用导入功能从SQL 2008中提取。只要SQL 2008数据库不使用特定于2005/2008的功能(因为您说它已经从2000年转换过来了,所以它不应该使用),那么您就可以了。唯一的问题是导入具有依赖关系的对象时。例如,在这种情况下,请确保首先将充当PK的所有表导入其他表的FK。然后做函数。然后执行视图,因为您可能有依赖于这些视图的存储过程。然后做SPs。如果存在重叠的依赖项,则可能必须手动编写某些对象的脚本,并将它们按特定顺序排列。

以下是与sql server数据库降级相关的链接:

此外,serverfault中还有一个与此主题相关的线程:

您可以使用sql脚本生成器来提取数据库定义和数据,并在sql 2000中运行该脚本


这很容易从

免费获得。不幸的是,SSMS中的“生成脚本”选项存在缺陷,在合理的时间内轻松实现这一点的唯一方法是使用第三方数据库比较或脚本工具

除了前面提到的SQL比较之外,我过去也在类似的项目中使用过。这些你都不会出错的。这两种工具都是一流的


生成脚本选项创建有错误的脚本的原因是它没有考虑依赖顺序,这又回到了sp_dependens中存在的错误。

在这种情况下,SQLCompare值得花费每一分钱。当然,如果您使用了2000没有的任何SQLServer2008功能,您仍然可能会遇到麻烦。