Simptomi
Pieņemsim, ka jums ir tabula ar BDL trigeri programmā Microsoft SQL Server 2008 R2, SQL Server 2012 vai SQL Server 2014 un šajā trigerī, kad pievienosities ievietotā/izdzēstā tabula ar citām tabulām. Šajā tabulā veicot BDL pārskatu, piekļuves pārkāpums var rasties trigera kompilēšanas laikā un 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.
Turklāt, veicot kļūdas, tiek reģistrētas SQL Server kļūdu žurnālā:
<datums><laiku> SPID # * *<*. FilePath . \SQLDumpxxx.txt>datuma< .... SQL Server izbeidz šo procesu.<datums><laiks> SPID # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *<datums><laiku> SPID # *<datuma><laiku><1 SPID # * BEGIN STACK DUMP:><2 datums><laiks><5 SPID # * ><6 datums><laiks><9 spid #><0 datums><laiks><3 SPID # *><4 datums><laiks><7 SPID # *><8 datums><laiks >SPID # * Exception Address = 00000000009E4F2A Module (sqlservr + 00000000002D4F2A)<datums><laiks> SPID # * Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION<datums><laiks> spid # * piekļuves pārkāpums radās rakstīšanas adrese 0000000000000000<datums><laiku> SPID # * Input Buffer 510 bytes-<datums><laiks> SPID # * SQL_query_code
Risinājums
Šī problēma pirmo reizi tika izlabota tālāk sniegtajā SQL Server kumulatīvajā atjauninājumā.
Kumulatīvais atjauninājums 1 SQL Server 2012 SP2 /en-us/help/2976982
Kumulatīvais atjauninājums 2 SQL Server 2014 /en-us/help/2967546
Kumulatīvais atjauninājums 10 SQL Server 2012 SP1 /en-us/help/2954099
Kumulatīvais atjauninājums 12 SQL Server 2008 R2 SP2 /en-us/help/2938478
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, neizmantojiet ievietoto/izdzēsto tabulu tieši vaicājumā, kas to savieno ar citām tabulām, bet ievieto to mapē Temp un izmantojiet vaicājuma vaicājumu.
Statusa
Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir norādīti sadaļā "attiecas uz".