Microsoft distribuye las correcciones de Microsoft SQL Server 2005, Microsoft SQL Server 2008 y Microsoft SQL Server 2008 R2 como un archivo descargable. Dado que las correcciones son acumulativas, cada nueva versión contiene todas las revisiones y correcciones de seguridad que se incluyeron con la versión anterior de correcciones de SQL Server 2005, Microsoft SQL Server 2008 y SQL Server 2008 R2.
La corrección que se describe en este artículo está disponible para las siguientes versiones de SQL Server:
- Microsoft SQL Server 2005 Service Pack 3 (SP3)
- Microsoft SQL Server 2005 Service Pack 4 (SP4)
- Microsoft SQL Server 2008 Service Pack 1 (SP1)
- Microsoft SQL Server 2008 Service Pack 2 (SP2)
Síntomas
Tenga en cuenta el siguiente escenario:
Crea un servidor vinculado en un equipo que ejecuta Microsoft SQL Server 2005, Microsoft SQL Server 2008 o Microsoft SQL Server 2008 R2. El servidor vinculado apunta a un origen de datos OLE DB en un servidor remoto.
Crea un sinónimo de una tabla en el servidor vinculado.
Crea una función definida por el usuario que usa el sinónimo o crea una vista que usa el sinónimo. A continuación, ejecute una consulta en la función definida por el usuario o en la vista.
Nota: Al ejecutar la consulta, se almacena en caché un plan de ejecución.
Realiza una operación en un servidor remoto para actualizar la versión del esquema de la tabla en el servidor vinculado. Por ejemplo, debe volver a generar el índice de la tabla en el servidor remoto para actualizar la versión del esquema de la tabla en el servidor vinculado.
Ejecuta otra consulta en la función definida por el usuario o en la vista.
En esta situación, recibe un mensaje de error similar al siguiente:
Nota
Servidor: Msj 7359, Número de nivel de nivel, Número de estado de estado, Número de línea de línea
El proveedor OLE DB "Nombre del proveedor" para el servidor vinculado "Nombre del servidor vinculado" notificó un cambio en la versión del esquema entre el tiempo de compilación ("Tiempo de compilación") y el tiempo de ejecución ("Tiempo de ejecución") para la tabla "Nombre de la tabla vinculada".
Nota El nombre del proveedor es un marcador de posición que representa el nombre del proveedor de OLE DB. Nombre de tabla vinculado es un marcador de posición que representa el nombre de la tabla que se encuentra en el servidor vinculado.
Causa
Este problema se produce porque el plan de ejecución existente no se borra correctamente. Esto provoca que cambie la versión del esquema, ya que la función definida por el usuario o la vista se vuelve a compilar cuando se ejecuta la segunda consulta. Por tanto, se produce el error.
Resolución
Información sobre la actualización acumulativa
SQL Server 2008 R2 Service Pack 1
La corrección de este problema se publicó por primera vez en la actualización acumulativa 1 para SQL Server 2008 R2 Service Pack 1. Para obtener más información acerca de cómo obtener este paquete de actualizaciones acumulativas, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2544793 paquete de actualización acumulativa 1 para SQL Server 2008 R2 Service Pack 1Nota Dado que las compilaciones son acumulativas, cada nueva corrección contiene todas las revisiones y correcciones de seguridad que se incluyeron con la versión de corrección anterior de SQL Server 2008 R2. Recomendamos que se plantee la posibilidad de aplicar la versión de corrección más reciente que contiene esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2567616 Compilaciones de SQL Server 2008 R2 que se publicaron después de SQL Server 2008 R2 Service Pack 1
SQL Server 2008 R2
La corrección de este problema se publicó por primera vez en la actualización acumulativa 7. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2008 R2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2507770 paquete de actualización acumulativa 7 para SQL Server 2008 R2 Nota Dado que las compilaciones son acumulativas, cada nueva corrección contiene todas las revisiones y correcciones de seguridad que se incluyeron con la versión de corrección anterior de SQL Server 2008 R2. Recomendamos que se plantee la posibilidad de aplicar la versión de corrección más reciente que contiene esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
981356 Compilaciones de SQL Server 2008 R2 que se publicaron después de SQL Server 2008 R2
Para SQL Server 2005 SP3
La corrección de este problema se publicó por primera vez en la actualización acumulativa 15. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2005 SP3, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2507766 paquete de actualización acumulativa 15 para SQL Server 2005 SP3
Nota: Dado que las compilaciones son acumulativas, cada nueva corrección contiene todas las revisiones y correcciones de seguridad que se incluyeron con la versión de corrección anterior de SQL Server 2005 SP3. Recomendamos que se plantee la posibilidad de aplicar la versión de corrección más reciente que contiene esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
960598 Compilaciones de SQL Server 2005 que se publicaron después de SQL Server 2005 SP3
Para SQL Server 2005 SP4
La corrección de este problema se publicó por primera vez en la actualización acumulativa 3. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2005 SP4, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2507769 paquete de actualización acumulativa 3 para SQL Server 2005 SP4
Nota: Dado que las compilaciones son acumulativas, cada nueva corrección contiene todas las revisiones y correcciones de seguridad que se incluyeron con la versión de corrección anterior de SQL Server 2005 SP4. Recomendamos que se plantee la posibilidad de aplicar la versión de corrección más reciente que contiene esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
937137 Compilaciones de SQL Server 2005 que se publicaron después de SQL Server 2005 SP4
Para SQL Server 2008 SP1
La corrección de este problema se publicó por primera vez en la actualización acumulativa 13. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2008 SP1, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2497673 paquete de actualización acumulativa 13 para SQL Server 2008 SP1
Nota: Dado que las compilaciones son acumulativas, cada nueva corrección contiene todas las revisiones y correcciones de seguridad que se incluyeron con la versión de corrección anterior de SQL Server 2008 SP1. Recomendamos que se plantee la posibilidad de aplicar la versión de corrección más reciente que contiene esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
970365 Compilaciones de SQL Server 2008 que se publicaron después de SQL Server 2008 SP1
Para SQL Server 2008 SP2
La corrección de este problema se publicó por primera vez en la actualización acumulativa 3. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2008 SP2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2498535 paquete de actualización acumulativa 3 para SQL Server 2008 SP2
Nota: Dado que las compilaciones son acumulativas, cada nueva corrección contiene todas las revisiones y correcciones de seguridad que se incluyeron con la versión de corrección anterior de SQL Server 2008 SP2. Recomendamos que se plantee la posibilidad de aplicar la versión de corrección más reciente que contiene esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2402659 Compilaciones de SQL Server 2008 que se publicaron después de SQL Server 2008 SP2
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".
Más información
Para obtener más información acerca de cómo usar Transact-SQL para crear un sinónimo, visite el siguiente sitio web de Microsoft Developer Network (MSDN):