REVISIÓN: error "un valor no cumple las restricciones de integridad de una columna o tabla" si la publicación de mezcla contiene muchos artículos y restricciones en SQL Server Compact 3.5

Se aplica: Microsoft SQL Server Compact 3.5 Service Pack 2

Síntomas


Imagine la siguiente situación:
  • Instalar Microsoft SQL Server Compact 3.5 en un equipo.
  • Se creará un suscriptor de SQL Server Compact 3.5.
  • Descargar muchas filas desde una publicación de mezcla a una base de datos mientras el publicador se sincroniza con el suscriptor. Las filas contienen muchos artículos y restricciones.
En este escenario, se registra un mensaje de error similar al siguiente en el registro de errores de SQL Server:
System.Data.SqlServerCe.SqlCeExceptionNative Error = 0, HRESULT =-2147217873, el mensaje de Error: un valor no cumple las restricciones de integridad de una columna o tabla.
Nota Este problema se produce en el sistema operativo de 32 bits y el sistema operativo de 64 bits.

Causa


Este problema se produce porque se utiliza un identificador no válido de exchange. Cuando muchas filas para su descarga en un estado pendiente, agente de cliente de SQL Compact llama a un método de reintento que utiliza un identificador no válido exchange. Por lo tanto, se produce el problema que se menciona en la sección "Síntomas".

Solución


La revisión que resuelve este problema se incluye en el paquete de actualización acumulativa 5 para SQL Server Compact 3.5 Service Pack 2 (SP2). Para obtener más información acerca de cómo obtener el paquete de actualización acumulativa 5 para SQL Server Compact 3.5 Service Pack 2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2553608 5 de actualización acumulativa para SQL Server Compact 3.5 Service Pack 2