sp_dbcmptlevel (Transact-SQL)
Si applica a: SQL Server
Imposta determinati comportamenti del database in modo che siano compatibili con la versione specificata di SQL Server.
Importante
Questa funzionalità verrà rimossa nelle versioni future di SQL Server. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Usare invece il livello di compatibilità ALTER DATABASE (Transact-SQL).
Convenzioni relative alla sintassi Transact-SQL
Sintassi
sp_dbcmptlevel
[ [ @dbname = ] N'dbname' ]
[ , [ @new_cmptlevel = ] new_cmptlevel OUTPUT ]
[ ; ]
Argomenti
[ @dbname = ] N'dbname'
Nome del database per il quale deve essere modificato il livello di compatibilità. I nomi di database devono essere conformi alle regole per gli identificatori. @dbname è sysname, con un valore predefinito .NULL
[ @new_cmptlevel = ] new_cmptlevel OUTPUT
Versione di SQL Server con cui il database deve essere reso compatibile. @new_cmptlevel è un parametro OUTPUT di tipo tinyint e deve essere uno dei valori seguenti:
90
= SQL Server 2005 (9.x)100
= SQL Server 2008 (10.0.x)110
= SQL Server 2012 (11.x)120
= SQL Server 2014 (12.x)130
= SQL Server 2016 (13.x)140
= SQL Server 2017 (14.x)150
= SQL Server 2019 (15.x)160
= SQL Server 2022 (16.x)
Valori del codice restituito
0
(esito positivo) o 1
(errore).
Set di risultati
Se non viene specificato alcun parametro o se il parametro @dbname non è specificato, sp_dbcmptlevel
restituisce un errore.
Se @dbname viene specificato senza @new_cmptlevel, il motore di database restituisce un messaggio che visualizza il livello di compatibilità corrente del database specificato.
Osservazioni:
Per una descrizione dei livelli di compatibilità, vedere Livello di compatibilità ALTER DATABASE (Transact-SQL).
Autorizzazioni
Solo il proprietario del database, i membri del ruolo predefinito del server sysadmin e il ruolo predefinito del database db_owner (se si modifica il database corrente) possono eseguire questa procedura.