Simptomi
Pieņemsim, ka jums ir priekšraksts Update , kas atsaucas uz neesošu nodalījumu funkciju, izmantojot $PARTITION atslēgvārdu programmā Microsoft SQL Server 2014, 2016 vai 2017. Piemēram,
ATJAUNINIET tablename Set ColumnName= "xyz", kur $PARTITION. NonExistingPartitionFunction (ColumnName) = 1
Šajā gadījumā SQL Server neveic atjaunināšanu vai atgriezīs kļūdas ziņojumu, lai norādītu, ka NonExistingPartitionFunction objekts nepastāv. Tomēr no lietotāja perspektīvas šķiet, ka priekšraksts Update tiek sekmīgi izpildīts, bet īstenībā tas neizdevās.
Cēlonis
Izpildot paketi, SQL Server var veikt atlikšanas nosaukuma atpazīšanu (DNR). Šajā procesā SQL Server uzreiz netiek parādīts kļūdas ziņojums, kad tiek uziets neesošs objekts, un tiek gaidīts, ka objekts tiks izveidots modulī vai paketē pirms tā priekšraksta izpildes, kas atsaucas uz šo objektu. Lai veiktu nodalījuma funkcijas, SQL Server neapstrādā DNR pareizi.
Papildinformācija
Papildinformāciju par DNR skatiet rakstā atlikšanas nosaukumu atrisināšana.
Risinājums
Šī problēma ir novērsta tālāk norādītajos kumulatīvajos SQL Server atjauninājumos:
Kumulatīvais atjauninājums 8 SQL Server 2016 SP1
Katrā jaunajā kumulatīvajā SQL Server atjauninājumā ir iekļauti visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā kumulatīvajā atjauninājumā. Skatiet jaunākos kumulatīvos atjauninājumus SQL Server:
Jaunākais SQL Server 2016 kumulatīvais atjauninājums
Statusa
Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir norādīti sadaļā "attiecas uz".
Atsauces
Uzziniet par terminoloģiju, ko Microsoft izmanto, lai aprakstītu programmatūras atjauninājumus.