更改数据库兼容级别

时间:2014-01-29 07:05:20

标签: sql-server

我已成功将数据库compatibility_level从90更改为100.(即SQL Server 2005改为SQL Server 2008/R2)。

现在我有一个疑问,由于这种类型的兼容级别更改,我是否会遇到功能上的任何问题,或者现有的表/函数/存储过程会遇到任何问题?

注意: master,tempdb,model and msdb所有这些仅具有100的兼容级别。 但myDatabase有90作为comp级别。现在我已经更新到100。

1 个答案:

答案 0 :(得分:3)

如果要将数据库备份还原到较旧版本的服务器软件,则只需担心数据库的兼容级别。如果您的所有数据库服务器都是2008(100)或2008 R2(110),那么您无需担心。

提升数据库的兼容级别不会破坏任何内容,除非您使用已弃用或过时的功能,例如ntext而不是nvarchar(MAX)。如果您提高兼容性级别并且它检测到您的架构有问题,SSMS应该给您一个警告或一组消息。

但是,它不会升级您的Sprocs,视图和其他对象。你必须自己审核。如果您不使用Sprocs,那么您无需担心。