KB2563924: "el flujo de los protocolos de flujo TDS entrante es incorrecto" cuando la función SQLPutData inserta el valor SQL_NULL_DATA en una TVP de SQL Server 2008 R2

Se aplica a: SQL Server 2008 R2

Microsoft distribuye las soluciones de Microsoft SQL Server 2008 R2 como un archivo que se puede descargar. Debido a que las correcciones son acumulativas, cada versión nueva contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de SQL Server 2008 R2.

Síntomas


Imagine la siguiente situación:
  • Tiene un equipo que ejecuta Microsoft SQL Server 2008 R2.
  • Ejecute una aplicación cliente que use el controlador ODBC de SQL Server 2008 R2 Native Client para enlazar un parámetro con valores de tabla como columna de datos en ejecución.
  • La aplicación cliente llama a la función SQLPutData para cambiar el parámetro con valor de tabla al valor SQL_NULL_DATA .
En este escenario, la aplicación cliente no llama a la función SQLPutData y recibe el siguiente mensaje de error:
[28000]-[Microsoft] [SQL Server Native Client 10.0] [SQL Server] el flujo de protocolo de la secuencia de datos tabulares (TDS) entrante es incorrecto. La transmisión finalizó de forma inesperada

Causa


Este problema se produce porque el controlador ODBC no envía la longitud de los datos del SQL_NULL_DATA valor al parámetro con valores de tabla.

Resolución


Para resolver este problema, aplique la corrección siguiente en un equipo que tenga instalado SQL Server 2008 R2 Native Client.

Información sobre la actualización acumulativa

Service Pack 1 de SQL Server 2008 R2

La corrección para 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 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 para SQL Server 2008 R2 Service Pack 1
Nota Como las compilaciones son acumulativas, cada nueva versión de corrección contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de corrección de SQL Server 2008 R2. Le recomendamos que considere la posibilidad de aplicar la versión de corrección más reciente 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 Las compilaciones de SQL Server 2008 R2 que se publicaron después de que se publicó SQL Server 2008 R2 Service Pack 1

SQL Server 2008 R2

La corrección para este problema se publicó por primera vez en la actualización acumulativa 8. Para obtener más información sobre 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:
2534352 Paquete de actualización acumulativa 8 para SQL Server 2008 R2
Nota Como las compilaciones son acumulativas, cada nueva versión de corrección contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de corrección de SQL Server 2008 R2. Le recomendamos que considere la posibilidad de aplicar la versión de corrección más reciente 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 Las compilaciones de SQL Server 2008 R2 que se lanzaron después de publicar SQL Server 2008 R2

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 sobre la función SQLPutData , visite el siguiente sitio web de MSDN:Para obtener más información sobre cómo usar la columna datos en ejecución, visite el siguiente sitio web de MSDN:Para obtener más información acerca de los parámetros con valores de tabla, visite el siguiente sitio web de MSDN:Para obtener más información sobre el modelo de mantenimiento incremental para SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
935897 Un modelo de servicio incremental disponible en el equipo de SQL Server para ofrecer revisiones para problemas detectados
Para obtener más información sobre el esquema de nomenclatura de 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 actualizaciones 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