Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So ändern Sie den Kompatibilitätsgrad einer Datenbank mit T-SQL

In SQL Server können Sie die ALTER DATABASE verwenden Anweisung zum Ändern des Kompatibilitätsgrads einer Datenbank.

Dies kann nützlich sein, wenn Sie eine Datenbank haben, die in einer früheren Version von SQL Server erstellt wurde, aber jetzt Funktionen verwenden müssen, die nur mit einer höheren Kompatibilitätsstufe verfügbar sind.

Zum Beispiel OPENJSON() Funktion ist nur unter Kompatibilitätsstufe 130 oder höher verfügbar. Während Ihre SQL Server-Installation diesen Kompatibilitätsgrad möglicherweise unterstützt, könnten Sie dennoch Datenbanken haben, die einen niedrigeren Kompatibilitätsgrad verwenden. In diesem Fall, wenn Sie OPENJSON() verwenden wollten gegenüber diesen Datenbanken müssten Sie den Kompatibilitätsgrad auf 130 oder höher erhöhen.

Beispiel

Hier ist ein Codebeispiel, das die Kompatibilität einer Datenbank ändert.

ALTER DATABASE Pets  
SET COMPATIBILITY_LEVEL = 150;

Ergebnis:

Commands completed successfully.

Die Datenbank namens Pets hat jetzt einen Kompatibilitätsgrad von 150.

Überprüfen Sie Ihren Datenbank-Kompatibilitätsgrad

Sie können die sys.databases verwenden Systemkatalogansicht, um die Kompatibilität einer bestimmten Datenbank oder aller Datenbanken zu überprüfen.

Hier ist ein Beispiel für die Überprüfung der Pets Datenbank.

SELECT compatibility_level
FROM sys.databases
WHERE name = 'Pets';

Ergebnis:

+-----------------------+
| compatibility_level   |
|-----------------------|
| 150                   |
+-----------------------+

Kompatibilitätsstufen nach Produkt

Die folgende Tabelle zeigt die Kompatibilitätsstufen, die von jeder Edition von SQL Server und Azure SQL-Datenbank unterstützt werden.

Produkt Version der Datenbank-Engine Standardmäßige Bezeichnung der Kompatibilitätsstufe Unterstützte Kompatibilitätsstufenwerte
SQL Server 2019 (15.x) 15 150 150, 140, 130, 120, 110, 100
SQL Server 2017 (14.x) 14 140 140, 130, 120, 110, 100
Azure SQL-Datenbank 12 150 150, 140, 130, 120, 110, 100
Verwaltete Instanz von Azure SQL-Datenbank 12 150 150, 140, 130, 120, 110, 100
SQL Server 2016 (13.x) 13 130 130, 120, 110, 100
SQL Server 2014 (12.x) 12 120 120, 110, 100
SQL Server 2012 (11.x) 11 110 110, 100, 90
SQL Server 2008 R2 10.5 100 100, 90, 80
SQL Server 2008 10 100 100, 90, 80
SQL Server 2005 (9.x) 9 90 90, 80
SQL Server 2000 (8.x) 8 80 80