Как проверить совместимость базы данных SQL Server после того, как sp_dbcmptlevel устарела? - PullRequest
50 голосов
/ 01 октября 2009

Согласно BOL (Электронная документация по SQL Server) на sp_dbcmptlevel,

Эта функция будет удалена в следующей версии Microsoft SQL Server. Не используйте эту функцию в новых разработках и изменяйте приложения, которые в настоящее время используют эту функцию, как можно скорее. Вместо этого используйте уровень совместимости ALTER DATABASE.

Теперь, единственный известный мне TSQL способ проверки совместимости базы данных - это sp_dbcmptlevel. Насколько я знаю, ALTER DATABASE Compatibility Level просто для устанавливает уровень совместимости, не получая информацию.

Как получить уровень совместимости без использования графического интерфейса?

Ответы [ 5 ]

94 голосов
/ 01 октября 2009
select name, compatibility_level , version_name = 
CASE compatibility_level
    WHEN 65  THEN 'SQL Server 6.5'
    WHEN 70  THEN 'SQL Server 7.0'
    WHEN 80  THEN 'SQL Server 2000'
    WHEN 90  THEN 'SQL Server 2005'
    WHEN 100 THEN 'SQL Server 2008/R2'
    WHEN 110 THEN 'SQL Server 2012'
    WHEN 120 THEN 'SQL Server 2014'
    WHEN 130 THEN 'SQL Server 2016'
    WHEN 140 THEN 'SQL Server 2017'
    WHEN 150 THEN 'SQL Server 2019'
    ELSE 'new unknown - '+CONVERT(varchar(10),compatibility_level)
END
from sys.databases
15 голосов
/ 01 октября 2009
select compatibility_level from sys.databases where name ='myDB'
5 голосов
/ 09 апреля 2013

Думаю, это было бы полезно здесь ...

65 = SQL Server 6.5
70 = SQL Server 7.0
80 = SQL Server 2000
90 = SQL Server 2005
100 = SQL Server 2008/R2
110 = SQL Server 2012
120 = SQL Server 2014
130 = SQL Server 2016
1 голос
/ 07 июня 2018

Как проверить совместимость базы данных SQL Server


       SELECT compatibility_level  as [Current compatibility_level] FROM
         sys.databases WHERE name = 'Database Name';

1 голос
/ 23 марта 2015

Я бы хотел добавить ответ от msdn:

USE AdventureWorks2012;
GO
SELECT compatibility_level
FROM sys.databases WHERE name = 'AdventureWorks2012';
GO

https://msdn.microsoft.com/en-us/library/bb933794.aspx

...