REVISIÓN: "no hay ninguna función ' {urn:schemas-microsoft-com:xml-sql}:variable()" error para una consulta de XQuery que actualiza el valor de una columna XML en SQL Server 2005, SQL Server 2008 o en SQL Server 2008 R2

Se aplica a: SQL Server 2008 R2SQL Server 2008Microsoft SQL Server 2005

Microsoft distribuye Microsoft SQL Server 2005, Microsoft SQL Server 2008 o Microsoft SQL Server 2008 R2 corrige como un archivo descargable. Como las revisiones son acumulativas, cada versión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior SQL Server 2005, SQL Server 2008 o SQL Server 2008 R2.

Síntomas


Cuando ejecuta una consulta de XQuery para actualizar el valor de una columna XML en Microsoft SQL Server 2005, Microsoft SQL Server 2008 o en Microsoft SQL Server 2008 R2, no se ejecuta la consulta de XQuery. Además, aparece un mensaje de error similar al siguiente:
Error ' no hay ninguna función ' {urn:schemas-microsoft-com:xml-sql}:variable()'
Por ejemplo, no ejecute la siguiente consulta que actualiza el valor de la columna TestCol :
use test DECLARE @TestIdentity INT SET @TestIdentity = 100 UPDATE dbo.TestTable SET TestCol.modify('replace value of (/ROOT/b/@ID)[1] with sql:variable("@TestIdentity")') FROM dbo.TestTable2 tbl2 INNER JOIN dbo.TestTable tbl ON tbl2.aID = tbl.aID And tbl2.bID = @TestIdentity
Nota Para evitar este problema, tendrá que reiniciar la instancia de SQL Server 2005 o SQL Server 2008.

Solución


Información sobre la actualización acumulativa

Service Pack 1 de SQL Server 2008 R2

La corrección para este problema se publicó primero en la actualización acumulativa 6 para SQL Server 2008 R2 Service Pack 1. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2679367 Paquete de actualización acumulativa 6 para SQL Server 2008 R2 Service Pack 1
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2. Le recomendamos que considere aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 R2 Service Pack 1

SQL Server 2008 R2

En primer lugar, la corrección para este problema se publicó en 13 de actualización acumulativa. 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:
2679366 Paquete de actualización acumulativa 13 para SQL Server 2008 R2
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2. Le recomendamos que considere aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 R2

Service Pack 3 de SQL Server 2008

La corrección para este problema se publicó primero en la actualización acumulativa 4 para SQL Server 2008 Service Pack 3. Para obtener más información acerca de este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2673383 Paquete de actualización acumulativa 4 para SQL Server 2008 Service Pack 3
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008. Microsoft recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga este hotfix. Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2629969 El de SQL Server 2008 generaciones que se publicaron después del lanzamiento de Service Pack 3 de SQL Server 2008
Las revisiones de Microsoft SQL Server 2008 se crean para determinados service Pack de SQL Server. Debe aplicar una revisión de Service Pack 3 de SQL Server 2008 a una instalación de Service Pack 3 de SQL Server 2008. De forma predeterminada, cualquier hotfix suministrada en un service pack de SQL Server se incluye en el próximo service pack de SQL Server.

Service Pack 1 de SQL Server 2008 R2

La corrección para este problema se publicó primero en la actualización acumulativa 4 para SQL Server 2008 R2 Service Pack 1. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2633146 Paquete de actualización acumulativa 4 para SQL Server 2008 R2 Service Pack 1
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2. Le recomendamos que considere aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 R2 Service Pack 1

SQL Server 2008 R2

En primer lugar, la corrección para este problema se publicó en 11 de actualización acumulativa. 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:
2633145 Paquete de actualización acumulativa 11 para SQL Server 2008 R2
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2. Le recomendamos que considere aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 R2

SQL Server 2008 Service Pack 2

La corrección para este problema se publicó primero en la actualización acumulativa 7 para SQL Server 2008 Service Pack 2. Para obtener más información acerca de este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2617148 Paquete de actualización acumulativa 7 para SQL Server 2008 Service Pack 2
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008. Microsoft recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 Service Pack 2
Las revisiones de Microsoft SQL Server 2008 se crean para determinados service Pack de SQL Server. Debe aplicar un hotfix de SQL Server 2008 Service Pack 2 a una instalación de SQL Server 2008 Service Pack 2. De forma predeterminada, cualquier hotfix suministrada en un service pack de SQL Server se incluye en el próximo service pack de SQL Server.

SQL Server 2008 Service Pack 1

La corrección para este problema en primer lugar se publicó en actualización acumulativa 16 para SQL Server 2008 Service Pack 1. Para obtener más información acerca de este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2582282 Paquete de actualización acumulativa 16 para SQL Server 2008 Service Pack 1
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008. Microsoft recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 Service Pack 1
Las revisiones de Microsoft SQL Server 2008 se crean para determinados service Pack de SQL Server. Debe aplicar un hotfix de SQL Server 2008 Service Pack 1 en una instalación de SQL Server 2008 Service Pack 1. De forma predeterminada, cualquier hotfix suministrada en un service pack de SQL Server se incluye en el próximo service pack de SQL Server.

Service Pack 1 de SQL Server 2008 R2

La corrección para este problema se publicó primero 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 actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2544793 Paquete de actualización acumulativa 1 de SQL Server 2008 R2 Service Pack 1
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2. Le recomendamos que considere aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 R2 Service Pack 1

SQL Server 2008 Service Pack 1

En primer lugar, la solución a este problema se publicó en la actualización 14 acumulativa para SQL Server 2008 Service Pack 1. Para obtener más información acerca de este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2527187 14 de paquete de actualización acumulativa para SQL Server 2008 Service Pack 1
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008. Microsoft recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 Service Pack 1
Las revisiones de Microsoft SQL Server 2008 se crean para determinados service Pack de SQL Server. Debe aplicar un hotfix de SQL Server 2008 Service Pack 1 en una instalación de SQL Server 2008 Service Pack 1. De forma predeterminada, cualquier hotfix suministrada en un service pack de SQL Server se incluye en el próximo service pack de SQL Server.

SQL Server 2008 Service Pack 2

La solución a este problema en primer lugar se publicó en la actualización acumulativa 4 para SQL Server 2008 Service Pack 2. Para obtener más información acerca de este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2527180 Paquete de actualización acumulativa 4 para SQL Server 2008 Service Pack 2
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008. Microsoft recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 Service Pack 2
Las revisiones de Microsoft SQL Server 2008 se crean para determinados service Pack de SQL Server. Debe aplicar un hotfix de SQL Server 2008 Service Pack 2 a una instalación de SQL Server 2008 Service Pack 2. De forma predeterminada, cualquier hotfix suministrada en un service pack de SQL Server se incluye en el próximo service pack de SQL Server.

Service Pack 3 de SQL Server 2008

La corrección para este problema se publicó primero en la actualización acumulativa 4 para SQL Server 2008 Service Pack 3. Para obtener más información acerca de este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2673383 Paquete de actualización acumulativa 4 para SQL Server 2008 Service Pack 3
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008. Microsoft recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga este hotfix. Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2629969 El de SQL Server 2008 generaciones que se publicaron después del lanzamiento de Service Pack 3 de SQL Server 2008
Las revisiones de Microsoft SQL Server 2008 se crean para determinados service Pack de SQL Server. Debe aplicar una revisión de Service Pack 3 de SQL Server 2008 a una instalación de Service Pack 3 de SQL Server 2008. De forma predeterminada, cualquier hotfix suministrada en un service pack de SQL Server se incluye en el próximo service pack de SQL Server.

SQL Server 2008 R2

La corrección para este problema en primer lugar se publicó 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 Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2. Le recomendamos que considere aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2008 R2

Service Pack 4 de SQL Server 2005

La corrección para este problema en primer lugar se publicó en actualización acumulativa 3 para SQL Server 2005 Service Pack 4. Para obtener más información acerca de este paquete de actualización acumulativa, 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 Service Pack 4
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la versión anterior de SQL Server 2005. Microsoft recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga este hotfix. Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2485757 Compilaciones de SQL Server 2005 que se publicaron después del lanzamiento de SQL Server 2005 Service Pack 4
Las revisiones de Microsoft SQL Server 2005 se crean para determinados service Pack de SQL Server. Debe aplicar una revisión de Service Pack 4 de SQL Server 2005 a una instalación de SQL Server 2005 Service Pack 4. De forma predeterminada, cualquier hotfix suministrada en un service pack de SQL Server se incluye en el próximo service pack de SQL Server.

SQL Server 2005 Service Pack 3

La corrección para este problema se publicó en primer lugar en 15 de actualización acumulativa para SQL Server 2005 Service Pack 3. Para obtener más información acerca de este paquete de actualización acumulativa, 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 Service Pack 3
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la versión anterior de SQL Server 2005. Microsoft recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga este hotfix. Si desea 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 del lanzamiento de SQL Server 2005 Service Pack 3
Las revisiones de Microsoft SQL Server 2005 se crean para determinados service Pack de SQL Server. Debe aplicar una revisión de Service Pack 3 de SQL Server 2005 a una instalación de SQL Server 2005 Service Pack 3. De forma predeterminada, cualquier hotfix suministrada en un service pack de SQL Server se incluye en el próximo service pack de SQL Server.

Estado


Microsoft ha confirmado que se trata de un problema de los productos de Microsoft recogidos en la sección "Se aplica a".

Referencias


Para obtener más información acerca de cómo consultar el tipo de datos XML en una consulta de XQuery, visite el siguiente sitio Web MSDN:Para obtener más información sobre el modelo de servicio Incremental de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
935897 Un modelo de servicio Incremental está disponible desde el equipo de SQL Server para entregar revisiones para problemas detectados
Para obtener más información acerca del esquema de nomenclatura para las actualizaciones de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
822499 Nuevo esquema de nomenclatura para los paquetes de actualización de software de Microsoft SQL Server
Para obtener más información acerca de la terminología de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684 Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft