In SQL Server puoi utilizzare ALTER DATABASE
istruzione per modificare il livello di compatibilità di un database.
Ciò può essere utile se si dispone di un database creato in una versione precedente di SQL Server, ma ora è necessario utilizzare funzionalità disponibili solo con un livello di compatibilità successivo.
Ad esempio, il OPENJSON()
la funzione è disponibile solo con il livello di compatibilità 130 o superiore. Sebbene l'installazione di SQL Server possa supportare questo livello di compatibilità, potresti comunque avere database che utilizzano un livello di compatibilità inferiore. In questo caso, se vuoi usare OPENJSON()
rispetto a tali database, dovresti aumentare il livello di compatibilità a 130 o superiore.
Esempio
Ecco un esempio di codice che modifica la compatibilità di un database.
ALTER DATABASE Pets
SET COMPATIBILITY_LEVEL = 150;
Risultato:
Commands completed successfully.
Il database chiamato Pets
ora ha un livello di compatibilità di 150.
Verifica il livello di compatibilità del tuo database
Puoi usare sys.databases
vista del catalogo di sistema per verificare la compatibilità di un determinato database o di tutti i database.
Ecco un esempio di controllo del Pets
banca dati.
SELECT compatibility_level
FROM sys.databases
WHERE name = 'Pets';
Risultato:
+-----------------------+ | compatibility_level | |-----------------------| | 150 | +-----------------------+
Livelli di compatibilità per prodotto
Ecco una tabella che mostra i livelli di compatibilità supportati da ogni edizione di SQL Server e Database SQL di Azure.
Prodotto | Versione del motore di database | Denominazione del livello di compatibilità predefinito | Valori del livello di compatibilità supportati |
---|---|---|---|
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 |
Database SQL di Azure | 12 | 150 | 150, 140, 130, 120, 110, 100 |
Istanza gestita del database SQL di Azure | 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 |