SQL Server 2000 到 2008 到 2012

use*_*441 10 sql-server-2005 sql-server-2008 sql-server migration

我们现在正在从 SQL Server 2000 迁移到 2008。我们正在对代码和脚本进行大量更改,因为自 2000 年到 2008 年以来发生了很多变化。在进行这些更改时,我想知道的是 - 我现在可以做些什么来使其与 2012 兼容吗?同时。至少那些从 2012 年到 2008 年向后兼容的变化等等。我想这样做的原因是,当我们决定从 2008 年移到 2012 年时,尽量减少未来(从现在开始的 3 到 4 年)的任何努力。任何在我能做的或需要注意的一切?

Mik*_*lsh 13

这个问题的最佳答案有点简短,但请查看在线书籍文章,这些文章讨论了哪些功能将在未来版本中删除,并且在各种版本中不再存在。

例如..在 SQL Server 2008 中,“旧式”左外连接语法 ( WHERE Table2.col1 *= Table1.Col1) 被列为不推荐使用(有但在未来版本中会被淘汰),它最终在 SQL Server 2012 中消失了。所以如果你保持该语法在 2008 年可以工作,但在升级到 SQL 2012 或更高版本后需要工作,否则会失败。

要开始使用,请查看这些链接,这些链接会将您带到描述列出的版本中不再支持哪些功能以及将来将删除哪些功能的文章。然后在您的代码中查找这些内容。还会说,如果您推迟 3 年以上,您可能希望查看 SQL Server 2012 以外的未来兼容性。例如,TEXT 字段仍可在 SQL Server 2012 中使用,但在 SQL 之后的版本中它们不太可能使用Server 2012 根据以下链接。

SQL Server 2012 不推荐使用的功能列表
SQL Server 2008R2 不推荐使用的功能列表

您还应该确保在升级到 2008 后让您的数据库在 SQL Server 2008 兼容模式下运行,并确保它在 2008 年运行良好,并允许您将其升级到 2012 - SQL Server 2000 数据库,或在 SQL Server 中运行的数据库2000 兼容模式不会迁移到 SQL Server 2012。

我还写了一个答案,其中广泛讨论了升级和迁移以及一般准备步骤。