2012-11-28 105 views
12

一个快速的信息问题:SQLServer兼容级别影响

在我的SQL Server 2008,我从SQL Server 2005和SQL Server 2008上的数据库的兼容级别迁移数据库设置为90(SQL Server 2005中)。

究竟是什么影响呢?

这意味着迁移的存储过程,触发器和函数在SQL Server 2008上可以正常工作,但是有什么缺点吗?

什么可能是将兼容级别设置为100(SQL Server 2008)?

表现?额外的功能?

感谢名单

+0

[将SQL Server兼容模式从90更改为100时有什么区别和陷阱?](http://stackoverflow.com/questions/3351312/what -are最差异和 - 陷阱-时变化-SQL服务器compat的模式-从-9) – Pondlife

回答

8

兼容模式是有帮助的人迁移了不再使用SQL的新版本兼容功能的应用。如果您的应用程序需要sql 2008不再支持的功能,那么您会希望以兼容模式运行它们;否则你想使用当前的sql模式。我们的业务运行一个应用程序,由于它连接到数据库的方式需要SQL 2000兼容模式;但它在SQL 2012服务器上运行。

代码中的特定函数可能会影响性能,因为所需的逻辑不同,而不是执行方式明显不同。作为一个非常普遍的规则,2012年和2008年为函数优化的SQL代码将比SQL 2000或SQL 7更快,因为它们添加了像CTE和un/pivot这样的东西,它们都允许简化编码。

相关问题