我们目前正在兼容模式8上运行服务器,我想更新它。

  • 进入并改变它的含义是什么?
  • 有什么可能打破?
  • 在我执行之前,有什么检查数据会存活吗?
  • 我可以回滚到模式8而不执行恢复并且不会丢失数据吗?

===============>>#1 票数:5 已采纳

如果您从80到90,那么差异很小。 从65到70+会导致严重影响(NULL的存储方式不同)。

意义 - 您的SP可以返回与您预期不同的结果可能会破坏:功能,SP数据应该存活; 什么都不应该影响事情。
从80移动到90后退只需几秒钟。 是的,你可以来回移动。

http://msdn.microsoft.com/en-us/library/bb510680.aspx

一些陷阱: http//mapamdug.blogspot.com/2006/03/sql-server-2005-gotcha-1.html

===============>>#2 票数:3

  1. 兼容模式不会影响存储。 这只是一面旗帜。 数据或查询中没有任何内容会发生变化。 只有查询执行才会受到影响。
  2. 没什么 - 或许多事情。 您是否使用标记为过时的语法并在2000年删除? 在提供查询提示时,您是否使用了parethesis? 你使用查询执行提示了吗? 如果是的话,最好先修改你的数据库,删除过时的语法,把括号放回去挖掘BOL,找出哪些提示会减慢你对新引擎的微调查询的速度。
  3. 不,但数据将继续存在。 实际上,如果您能够在server2005上运行数据库,即使在模式8下,您也已经在使用新的数据格式。
  4. 是的,你可以回滚。 它没有改变,它只是设置一个标记,上面写着“我的查询是兼容的”。

===============>>#3 票数:0

兼容模式禁用了较新版本的功能,我个人并没有真正使用过许多有问题的数据库,在我们的环境中出现问题的关键是移动到9后,您无法再使用Enterprise Manager查看数据库。

备份/恢复是一个不错的选择,我也相信你可以毫无问题地将其翻转。

===============>>#4 票数:0

(我确实说过,只有当你从6.5移动时才会在char()字段中存储任何内容,当NULL - 70和更大字段使用整个字段时,这可能会导致大规模的大小更改。)

VBStreets是正确的 - 而且肯定在第3点 - 当你第一次在2005年运行数据库时,它转换了数据结构。 如果进行备份,则无论兼容级别如何,都无法在以前的版本上进行恢复。

  ask by digiguru translate from so

未解决问题?本站智能推荐:

2回复

如何使应用程序与.NET 4.0和.NET 4.5兼容

我是.NET和C#的新手。 我最近承担了将我的应用程序从.NET 4.0升级到.NET 4.5的任务,以跟上我团队中的其他产品。 我希望能够在.NET 4和.NET 4.5上运行我的应用程序(它有几个项目,一些基于ASP .NET的Web项目和一些独立的应用程序项目(控制台应用程序)
1回复

SonarQube:SQL Server 2014兼容模式

SonarQube是否将数据库兼容性设置为SQL Server 2014来支持SQL Server 2016托管的数据库?
2回复

SQL Server兼容性问题

我有一个相当老而且很长的查询,写在SQL Server 2000的石器时代。您可能会怀疑它使用了像c.address_id =* b.address_id这样的旧联接。 当我尝试运行它时,弹出错误消息,我必须将兼容性级别设置为80才能启用这种类型的联接。 我已经尝试过这种方式:
3回复

SQL Server数据库的兼容级别

我的数据库托管服务器允许恢复兼容级别为90的SQL Server数据库(SQL Server 2005)。 我的数据库是在本地创建的,兼容级别为100(SQL Server 2008)。 所以,我生成了我的数据库脚本(版本2008)并在SQL Server 2005中运行,备份并恢复到我
1回复

将SQL Server 2016兼容级别更改为2012

在我当前的项目中,我们正在使用兼容级别为2012(110)的SQL Server 2016,我想将其更改为2016。这是我的问题: 我们是否会由于此兼容性级别(2012)而失去性能改进,我该如何证明呢? 过去,就像我的拼贴画所说的那样,他们尝试过这种方法,但是某些索引无法正常工
1回复

SQL Server 2008 SSIS包兼容性

我试图将SSIS程序包保存在运行2005的sql服务器上。我遇到的问题是我正在本地计算机上使用SQL Server Management Studio 2008来执行此操作,并且它不允许我将程序包保存在服务器上因为它与2008不兼容。我不知道他们在Management Studio中是否有某种兼容选
1回复

更改SQL Server兼容性级别

我有一个从2000年升级到2005年的数据库。使用sp_dbcmptlevel将兼容性级别更改为90是否有任何问题。这会导致旧查询或存储过程出现任何问题吗?
1回复

LINQ to SQL不同版本的SQL Server之间的兼容性

我通过连接到SQL Server 2005数据库创建了我的DataClasses。 如果我的应用程序要连接到SQL Server 2000数据库,是否需要重新编译? SQL Server 2000不支持ROW_NUMBER()函数。 我正在使用LINQ to SQL的Skip()和Ta
1回复

SQL Server 2014兼容性功能不适用于2008

我在开发环境中使用SQL Server 2014。 但是,我的客户使用的是SQL Server 2008,他们在某些脚本方面遇到了问题,例如与SQL Server 2008不兼容的关键字CONCAT 。 我更正了concat问题,但是如何防止此类问题。 我试图将兼容性级别激活为:S
1回复

SQL Server本机客户端10.0与Windows XP的兼容性

驱动程序“ SQL Server本机客户端10.0”是否与Windows XP兼容? 谢谢