Simptomi
Pieņemsim, ka izmantojat Microsoft SQL Server 2014. Kad mēģināt izmantot DatePart (nedēļas diena) vietējā kompilētā iekļautā procedūrā, pastāv piekļuves pārkāpums un savienojums tiek pārtraukts. Turklāt tiek parādīts šāds kļūdas ziņojums:
Pašreizējā komandā radās nopietna kļūda. Rezultāti, ja tādi ir, ir jāizmet.
Cēlonis
Šī problēma rodas tāpēc, ka SQL Server 2014 ir defekts. izmantojot funkciju DatePart ar CHAR argumentu, tiek ieviesta netieša pāreja uz datetimeoffset. Vietējā saglabātā procedūra neatbalsta datetimeoffset.
Risinājums
Pēc tam, kad tiek lietots labojumfails, SQL Server izveidos jaunu loģiku, lai konvertētu CHAR argumentu uz datetime2 vietējai saglabātajai procedūrai un datetimeoffset , lai veiktu parastu saglabāto procedūru un nepārtrauktu locīšanu. Šī problēma pirmo reizi tika izlabota tālāk sniegtajā SQL Server kumulatīvajā atjauninājumā.
Kumulatīvais atjauninājums 1 SQL Server 2014 /en-us/help/2931693
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:
Risinājums
Lai novērstu šo problēmu, skaidri pārvērtiet par atbalstītu datetime tipu.
Statusa
Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir norādīti sadaļā "attiecas uz".