Partager via


sp_dbcmptlevel (Transact-SQL)

S'applique à : SQL Server

Définit certains comportements de base de données à compatibilité avec la version spécifiée de SQL Server.

Important

Cette fonctionnalité sera supprimée dans une version future de SQL Server. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement, et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité. Utilisez plutôt le niveau de compatibilité ALTER DATABASE (Transact-SQL).

Conventions de la syntaxe Transact-SQL

Syntaxe

sp_dbcmptlevel
    [ [ @dbname = ] N'dbname' ]
    [ , [ @new_cmptlevel = ] new_cmptlevel OUTPUT ]
[ ; ]

Arguments

[ @dbname = ] N’dbname'

Nom de la base de données pour laquelle le niveau de compatibilité doit être modifié. Les noms de base de données doivent être conformes aux règles relatives aux identificateurs. @dbname est sysname, avec la valeur par défaut NULL.

[ @new_cmptlevel = ] sortie new_cmptlevel

Version de SQL Server avec laquelle la base de données doit devenir compatible. @new_cmptlevel est un paramètre OUTPUT de type tinyint et doit être l’une des valeurs suivantes :

  • 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)

Valeurs des codes de retour

0 (réussite) ou 1 (échec).

Jeu de résultats

Si aucun paramètre n’est spécifié ou si le paramètre @dbname n’est pas spécifié, sp_dbcmptlevel retourne une erreur.

Si @dbname est spécifié sans @new_cmptlevel, le Moteur de base de données retourne un message affichant le niveau de compatibilité actuel de la base de données spécifiée.

Notes

Pour obtenir une description des niveaux de compatibilité, consultez le niveau de compatibilité ALTER DATABASE (Transact-SQL).

autorisations

Seul le propriétaire de la base de données, les membres du rôle serveur fixe sysadmin et le rôle de base de données fixe db_owner (si vous modifiez la base de données actuelle) peuvent exécuter cette procédure.