En SQL Server, puede usar ALTER DATABASE
instrucción para cambiar el nivel de compatibilidad de una base de datos.
Esto puede ser útil si tiene una base de datos que se creó en una versión anterior de SQL Server, pero ahora necesita usar funciones que solo están disponibles con un nivel de compatibilidad posterior.
Por ejemplo, OPENJSON()
La función solo está disponible con el nivel de compatibilidad 130 o superior. Si bien su instalación de SQL Server puede admitir este nivel de compatibilidad, aún podría tener bases de datos que usen un nivel de compatibilidad más bajo. En este caso, si desea utilizar OPENJSON()
contra esas bases de datos, necesitaría aumentar el nivel de compatibilidad a 130 o más.
Ejemplo
Este es un ejemplo de código que cambia la compatibilidad de una base de datos.
ALTER DATABASE Pets
SET COMPATIBILITY_LEVEL = 150;
Resultado:
Commands completed successfully.
La base de datos llamada Pets
ahora tiene un nivel de compatibilidad de 150.
Verifique el nivel de compatibilidad de su base de datos
Puede usar sys.databases
vista de catálogo del sistema para verificar la compatibilidad de una base de datos determinada o de todas las bases de datos.
Este es un ejemplo de verificación de Pets
base de datos.
SELECT compatibility_level
FROM sys.databases
WHERE name = 'Pets';
Resultado:
+-----------------------+ | compatibility_level | |-----------------------| | 150 | +-----------------------+
Niveles de compatibilidad por producto
Aquí hay una tabla que muestra los niveles de compatibilidad compatibles con cada edición de SQL Server y Azure SQL Database.
Producto | Versión del motor de base de datos | Designación de nivel de compatibilidad predeterminada | Valores de nivel de compatibilidad admitidos |
---|---|---|---|
Servidor SQL 2019 (15.x) | 15 | 150 | 150, 140, 130, 120, 110, 100 |
Servidor SQL 2017 (14.x) | 14 | 140 | 140, 130, 120, 110, 100 |
Base de datos Azure SQL | 12 | 150 | 150, 140, 130, 120, 110, 100 |
Instancia administrada de Azure SQL Database | 12 | 150 | 150, 140, 130, 120, 110, 100 |
Servidor SQL 2016 (13.x) | 13 | 130 | 130, 120, 110, 100 |
Servidor SQL 2014 (12.x) | 12 | 120 | 120, 110, 100 |
Servidor SQL 2012 (11.x) | 11 | 110 | 110, 100, 90 |
Servidor SQL 2008 R2 | 10,5 | 100 | 100, 90, 80 |
Servidor SQL 2008 | 10 | 100 | 100, 90, 80 |
Servidor SQL 2005 (9.x) | 9 | 90 | 90, 80 |
Servidor SQL 2000 (8.x) | 8 | 80 | 80 |