sql >> Database teknologi >  >> RDS >> Sqlserver

Sådan ændres kompatibilitetsniveauet for en database med T-SQL

I SQL Server kan du bruge ALTER DATABASE sætning for at ændre kompatibilitetsniveauet for en database.

Dette kan være nyttigt, hvis du har en database, der blev oprettet i en tidligere version af SQL Server, men du skal nu bruge funktioner, der kun er tilgængelige med et senere kompatibilitetsniveau.

For eksempel OPENJSON() funktion er kun tilgængelig under kompatibilitetsniveau 130 eller højere. Selvom din SQL Server-installation muligvis understøtter dette kompatibilitetsniveau, kan du stadig have databaser, der bruger et lavere kompatibilitetsniveau. I dette tilfælde, hvis du ønskede at bruge OPENJSON() mod disse databaser, skal du øge kompatibilitetsniveauet til 130 eller højere.

Eksempel

Her er et eksempel på kode, der ændrer kompatibiliteten af ​​en database.

ALTER DATABASE Pets  
SET COMPATIBILITY_LEVEL = 150;

Resultat:

Commands completed successfully.

Databasen kaldet Pets har nu et kompatibilitetsniveau på 150.

Tjek dit databasekompatibilitetsniveau

Du kan bruge sys.databases systemkatalogvisning for at kontrollere kompatibiliteten af ​​en given database eller alle databaser.

Her er et eksempel på kontrol af Pets database.

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

Resultat:

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

Kompatibilitetsniveauer efter produkt

Her er en tabel, der viser de kompatibilitetsniveauer, der understøttes af hver udgave af SQL Server og Azure SQL Database.

Produkt Databasemotorversion Standard kompatibilitetsniveaubetegnelse Understøttede kompatibilitetsniveauværdier
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-database 12 150 150, 140, 130, 120, 110, 100
Azure SQL Database Managed Instance 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

  1. Hvad er det mindste klientfodaftryk, der kræves for at forbinde C# til en Oracle-database?

  2. Sådan slutter du dig til MySQL og Postgres i en live materialiseret visning

  3. Hvordan versionerer du dit databaseskema?

  4. PostgreSQL Multi-Cloud Cluster Deployment