Pregunta

  1. He realizado una copia de seguridad de una base de datos de SQL Server que se ejecuta en SQL Server 2008.
  2. He restaurado esa copia de seguridad en una instancia de SQL Server 2012.
  3. He establecido el nivel de compatibilidad en la instancia restaurada en SQL Server 2012 (110).

¿Qué hace esto a la base de datos?

¿Lo hace?

  1. Hacer que se examinen los procedimientos almacenados en busca de incompatibilidades
  2. causar actualizaciones a todas las páginas de datos en la base de datos
  3. Causar actualizaciones a los datos a medida que se accede en el futuro
  4. Causar errores en el futuro si se ejecutan procedimientos o opiniones almacenados que usan sintaxis incompatible

¿Dónde en los libros en línea, o de lo contrario, puedo encontrar más detalles?

¿Fue útil?

Solución

El nivel de compatibilidad simplemente cambia la sintaxis del lenguaje compatible con las declaraciones SQL. Esto hará que todos los planes de ejecución expiren y los obligen a recompilarlos. No tiene nada que ver con el motor de almacenamiento de datos o la forma en que los datos se escriben en el disco.

Una vez que se adjunta una base de datos a una instancia de SQL 2012, está en el formato de almacenamiento SQL 2012 y no se puede volver a una versión anterior de SQL (sin importar a qué configuración se establece el nivel de compatibilidad).

El enlace proporcionado por @shark (http://msdn.microsoft.com/en-us/library/bb510680%28v=sql.110%29.aspx) en los comentarios proporciona una lectura adicional sobre el tema.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a dba.stackexchange
scroll top