Symptomen
Stel dat u een Update -instructie hebt die verwijst naar een niet-bestaande partitiefunctie met behulp van het trefwoord $Partition in microsoft SQL Server 2014, 2016 of 2017. Voorbeeld:
UPDATE tabel naamsetcolumnName= ' XYZ ' waarbij $Partition. NonExistingPartitionFunction (columnName) = 1
In deze situatie voert SQL Server geen update uit of wordt een foutbericht weergegeven om aan te geven dat het NonExistingPartitionFunction -object niet bestaat. Vanuit het oogpunt van de gebruiker lijkt het echter alsof de Update -instructie is uitgevoerd, maar eigenlijk niet.
Oorzaak
Wanneer u een batch uitvoert, kan SQL Server de uitgestelde naamomzetting (DNR) uitvoeren. Bij deze procedure wordt in SQL Server niet onmiddellijk een fout weergegeven als er een niet-bestaand object wordt aangetroffen, en er wordt verwacht dat het object wordt gemaakt door de module of batch vóór de uitvoering van de statement die verwijst naar dat object. Voor partitiefuncties werkt SQL Server DNR niet goed.
Meer informatie
Zie voor meer informatie over DNR voor meer informatie over het oplossen van namen.
Oplossing
Dit probleem is opgelost in de volgende cumulatieve updates voor SQL Server:
Cumulatieve update 8 voor SQL Server 2016 SP1
Elke nieuwe cumulatieve update voor SQL Server bevat alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige cumulatieve update. Bekijk de nieuwste cumulatieve updates voor SQL Server:
Nieuwste cumulatieve update voor SQL Server 2016
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.
Verwijzingen
Lees meer over de terminologiedie door Microsoft wordt gebruikt om software-updates te beschrijven.