Síntomas
Imagine la siguiente situación:
-
Crea una publicación que tiene filtros de columna de una base de datos de publicación en una instancia de SQL Server 2005.
-
Restaure la copia de seguridad de la base de datos de publicación en una instancia de SQL Server 2012, 2014 o 2016.
-
El paquete secundario contiene una cadena de conexión especificada por una expresión.
-
La configuración de replicaciones se mantiene, por ejemplo, con la opción KEEP_REPLICATION de una instrucción restore .
En este escenario, la replicación no funciona en SQL Server 2012, 2014 o 2016.
Causa
Este problema se produce porque la longitud de los objetos de columnas del artículo se recupera de los metadatos de la tabla, que son de dos bytes para SQL Server 2005 y cuatro bytes para SQL Server 2012, 2014 y 2016. Por ello, cuando intenta insertar los identificadores de columna del artículo en este objeto, copia los dos primeros bytes que dejan los valores de los elementos no utilizados iniciales como están.
Resolución
Este problema se corrigió en las siguientes actualizaciones acumulativas para SQL Server:
Actualización acumulativa 2 para SQL Server 2016 SP1
Actualización acumulativa 4 para SQL server 2016actualización acumulativa 3 para SQL Server 2014 SP2actualización acumulativa 10 para SQL Server 2014 SP1
Actualización acumulativa 5 para SQL Server 2012 Service Pack 3
Cada actualización acumulativa para SQL Server contiene todas las revisiones y todas las revisiones de seguridad incluidas en la actualización acumulativa anterior. Consulte las últimas actualizaciones acumulativas para SQL Server:
Actualización acumulativa más reciente de SQL server 2016 actualización acumulativa más reciente para SQL Server 2014 SP1/SP2 actualización acumulativa más reciente para SQL Server 2012
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".
Referencias
Obtenga más información sobre la terminología que Microsoft usa para describir las actualizaciones de software.