Síntomas
Suponga que tiene una instrucción Update que hace referencia a una función de partición inexistente mediante la palabra clave $Partition en Microsoft SQL Server 2014, 2016 o 2017. Por ejemplo,
ACTUALICE TableName , establezca columnName= ' XYZ ' donde $Partition. NonExistingPartitionFunction (columnName) = 1
En esta situación, SQL Server no realiza una actualización ni devuelve un mensaje de error para indicar que el objeto NonExistingPartitionFunction no existe. Sin embargo, desde la perspectiva del usuario, parece que la instrucción Update se ejecuta correctamente, pero en realidad se produjo un error.
Causa
Al ejecutar un lote, SQL Server puede ejecutar la resolución de nombres diferida (DNR). En este proceso, SQL Server no genera un error inmediatamente cuando encuentra un objeto inexistente y espera que el módulo o lote cree el objeto antes de la ejecución de la instrucción que hace referencia a ese objeto. Para las funciones de partición, SQL Server no maneja el DNR correctamente.
Más información
Para obtener más información acerca de DNR, consulte resolución diferida de nombres.
Resolución
Este problema se ha corregido en las siguientes actualizaciones acumulativas para SQL Server:
Actualización acumulativa 8 para SQL Server 2016 SP1
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
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íaque Microsoft usa para describir las actualizaciones de software.