Príznaky
Predpokladajme, že používate Microsoft SQL Server 2014. Pri pokuse o použitie DatePart (všedný deň) v natívne kompilovaný uložená procedúra je porušenie prístupu a pripojenie je ukončené. Okrem toho sa zobrazí nasledujúca chyba:
V aktuálnom príkaze sa vyskytla závažná chyba. Prípadné výsledky by mali byť zahodené.
Príčina
Problém sa vyskytuje, pretože vada v SQL Server 2014. pomocou DatePart s argumentom char sa zavádza implicitná Konverzia na datetimeoffset. Natívna uložená procedúra nepodporuje datetimeoffset.
Riešenie
Po použití tejto rýchlej opravy bude SQL Server vykonávať zmeny na zavedenie novej logiky na konvertovanie argumentu char na DateTime2 pre natívnu uloženú procedúru a datetimeoffset pre bežnú uloženú procedúru a konštantné skladanie. Tento problém bol najskôr vyriešený v nasledujúcej kumulatívnej aktualizácii SQL servera.
Kumulatívna aktualizácia 1 pre SQL Server 2014 /en-us/help/2931693
Každá nová Kumulatívna aktualizácia pre SQL Server obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúcej kumulatívnej aktualizácie. Pozrite si najnovšie kumulatívne aktualizácie pre SQL Server:
Alternatívne riešenie
Ak chcete problém obísť, explicitne skonvertujte na podporovaný typ DateTime .
Stav
Spoločnosť Microsoft potvrdzuje, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v tomto článku v časti Informácie v tomto článku sa týkajú nasledujúcich produktov.