Symptom
Anta att du har ett Update -uttryck som refererar till en icke existerande partitioner med hjälp av $partition nyckelord i Microsoft SQL Server 2014, 2016 eller 2017. Till exempel:
UPPDATERA TableName ange columnName= ' XYZ ' WHERE $partition. NonExistingPartitionFunction (columnName) = 1
I det här fallet utför SQL Server inte en uppdatering eller ett fel meddelande som anger att NonExistingPartitionFunction -objektet inte finns. Från användar perspektivet verkar det som om Update -satsen har genomförts men faktiskt misslyckades.
Orsak
När du kör en batch kan SQL Server utföra uppskjuten namn (DNR). I den här processen skapar SQL Server inte omedelbart ett fel när ett objekt som inte finns visas och förväntar sig att objektet skapas av modulen eller batchen innan instruktionen som refererar till objektet. Det går inte att hantera DNR korrekt för att få partitioner funktioner.
Mer information
Mer information om DNR finns i uppskjuten namn matchning.
Lösning
Det här problemet är åtgärdat i följande kumulativa uppdateringar för SQL Server:
Kumulativ uppdatering 8 för SQL Server 2016 SP1
Varje ny kumulativ uppdatering för SQL Server innehåller alla snabb korrigeringar och alla säkerhets korrigeringar som ingick i den föregående kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:
Senaste kumulativa uppdateringen för SQL Server 2016
Status
Microsoft har bekräftat att det här är ett problem i Microsoft-produkterna som nämns i "gäller".
Referenser
Lär dig mer om terminologinsom Microsoft använder för att beskriva program varu uppdateringar.