我已成功将数据库compatibility_level
从90更改为100.(即SQL Server 2005
改为SQL Server 2008/R2
)。
现在我有一个疑问,由于这种类型的兼容级别更改,我是否会遇到功能上的任何问题,或者现有的表/函数/存储过程会遇到任何问题?
注意: master,tempdb,model and msdb
所有这些仅具有100的兼容级别。
但myDatabase有90作为comp级别。现在我已经更新到100。
答案 0 :(得分:3)
如果要将数据库备份还原到较旧版本的服务器软件,则只需担心数据库的兼容级别。如果您的所有数据库服务器都是2008(100)或2008 R2(110),那么您无需担心。
提升数据库的兼容级别不会破坏任何内容,除非您使用已弃用或过时的功能,例如ntext
而不是nvarchar(MAX)
。如果您提高兼容性级别并且它检测到您的架构有问题,SSMS应该给您一个警告或一组消息。
但是,它不会升级您的Sprocs,视图和其他对象。你必须自己审核。如果您不使用Sprocs,那么您无需担心。