一个快速的信息问题:SQLServer兼容级别影响
在我的SQL Server 2008,我从SQL Server 2005和SQL Server 2008上的数据库的兼容级别迁移数据库设置为90
(SQL Server 2005中)。
究竟是什么影响呢?
这意味着迁移的存储过程,触发器和函数在SQL Server 2008上可以正常工作,但是有什么缺点吗?
什么可能是将兼容级别设置为100
(SQL Server 2008)?
表现?额外的功能?
感谢名单
一个快速的信息问题:SQLServer兼容级别影响
在我的SQL Server 2008,我从SQL Server 2005和SQL Server 2008上的数据库的兼容级别迁移数据库设置为90
(SQL Server 2005中)。
究竟是什么影响呢?
这意味着迁移的存储过程,触发器和函数在SQL Server 2008上可以正常工作,但是有什么缺点吗?
什么可能是将兼容级别设置为100
(SQL Server 2008)?
表现?额外的功能?
感谢名单
兼容模式是有帮助的人迁移了不再使用SQL的新版本兼容功能的应用。如果您的应用程序需要sql 2008不再支持的功能,那么您会希望以兼容模式运行它们;否则你想使用当前的sql模式。我们的业务运行一个应用程序,由于它连接到数据库的方式需要SQL 2000兼容模式;但它在SQL 2012服务器上运行。
代码中的特定函数可能会影响性能,因为所需的逻辑不同,而不是执行方式明显不同。作为一个非常普遍的规则,2012年和2008年为函数优化的SQL代码将比SQL 2000或SQL 7更快,因为它们添加了像CTE和un/pivot这样的东西,它们都允许简化编码。
除了无法使用任何新功能(包括幕后功能)作为查询优化程序(SQL Server 2014中的改进版)中的改进功能,在兼容模式下保留以后,升级变得更加困难。 MSDN有不同版本的列表http://msdn.microsoft.com/en-us/library/bb510680%28v=sql.110%29.aspx
[将SQL Server兼容模式从90更改为100时有什么区别和陷阱?](http://stackoverflow.com/questions/3351312/what -are最差异和 - 陷阱-时变化-SQL服务器compat的模式-从-9) – Pondlife