3

I recently took over a SQL Server running SQL Server 2012. One of the databases is running at compatibility level 90 (SQL Server 2005). I've learned that the database originated on a 2005 server and was migrated over. The developers are claiming there's no need to keep it at 90.

Is there a way to check whether any of the code in the database relies on 2005 features or syntax?

I could back up the database and restore a new copy, then convert the copy to 2012 mode, but would that actually tell me anything? I don't want to end up in a situation where I've changed it, then find out days or weeks later that some function or procedure is broken.

4

1 回答 1

2

您将数据库格式版本与其兼容性混淆了。后者可以随时更改为 SQL Server 实例支持的任何值。因此,即使我怀疑某些东西会损坏,您也可以随时将其退回。

此外,在进行类似的操作之前,通常最好查阅文档:Breaking Changes to Database Engine Features

于 2016-06-03T17:14:14.733 回答