Published on

May 1, 2014

Comprender los modos de compatibilidad de SQL Server

SQL Server es un potente sistema de gestión de bases de datos que admite varias versiones de SQL Server en un modo de compatibilidad. Este modo de compatibilidad se puede configurar a nivel de propiedades de la base de datos, lo que le permite cambiar rápidamente entre niveles de compatibilidad antiguos y más nuevos.

Cambiar el nivel de compatibilidad es a veces necesario, especialmente al migrar bases de datos o trabajar con sistemas heredados. Es importante saber qué modos de compatibilidad están disponibles para cada base de datos. La regla general es admitir la versión actual y las dos versiones anteriores.

Aunque puede encontrar esta información en la documentación de SQL Server, puede ser más conveniente tener un script que proporcione una descripción general rápida de las versiones admitidas. Aquí hay un ejemplo de script:

WITH compatversions AS (
SELECT 65 AS MajorVersion ,'SQL Server 6.5' AS ServerVersion
UNION
SELECT 70,'SQL Server 7.0' 
UNION
SELECT 80 , 'SQL Server 2000' 
UNION 
SELECT 90 , 'SQL Server 2005' 
UNION 
SELECT 100 , 'SQL Server 2008/R2' 
UNION
SELECT 110 , 'SQL Server 2012' 
UNION 
SELECT 120 , 'SQL Server 2014' 
)
SELECT TOP 3 ServerVersion,MajorVersion
,ServerVersion + ' ('+ CONVERT(VARCHAR(3),MajorVersion) +')' AS DropDownFormat
FROM compatversions
WHERE MajorVersion IN (
SELECT TOP 3 MajorVersion 
FROM compatversions
WHERE MajorVersion <= CONVERT(INT,CAST(@@microsoftversion/ 0x1000000 AS VARCHAR(3)) + '0')
ORDER BY MajorVersion DESC) 
ORDER BY MajorVersion ASC;

Este script devolverá las versiones admitidas en un formato similar a la interfaz gráfica de usuario de las propiedades de la base de datos. Por ejemplo, si está utilizando SQL Server 2014, la salida será:

ServerVersion          MajorVersion    DropDownFormat
SQL Server 2008/R2      100             SQL Server 2008/R2 (100)
SQL Server 2012         110             SQL Server 2012 (110)
SQL Server 2014         120             SQL Server 2014 (120)

Vale la pena señalar que la interfaz gráfica de usuario en SQL Server 2014 puede mostrar un nivel de compatibilidad adicional para SQL Server 2005 (nivel de compatibilidad 90). Sin embargo, este nivel de compatibilidad no es compatible con SQL Server 2014. Si intenta seleccionar el nivel de compatibilidad 90, es posible que encuentre un error. La documentación indica que las bases de datos con nivel de compatibilidad 90 se actualizarán automáticamente al nivel de compatibilidad 100 (SQL Server 2008).

Cuando se utiliza la interfaz gráfica de usuario o se intenta cambiar los modos de compatibilidad, es importante tener en cuenta que los niveles de compatibilidad mostrados no siempre son válidos. Siempre se recomienda consultar la documentación oficial o utilizar scripts como el proporcionado para garantizar cambios precisos en el nivel de compatibilidad.

Comprender los modos de compatibilidad de SQL Server es crucial para administrar bases de datos y garantizar la compatibilidad con diferentes versiones de SQL Server. Al utilizar el nivel de compatibilidad adecuado, puede garantizar un rendimiento y una compatibilidad óptimos para su entorno de SQL Server.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.