KB2950189 – RJEŠENJE: Do povrede prava pristupa dolazi kada izvršavate upit s ažuriranjem na tablici koja ima DML okidač u SQL Server

Primjenjuje se na
SQL Server 2008 R2 Service Pack 2 SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Simptomi

Pretpostavimo da imate tablicu koja ima DML okidač u sustavima Microsoft SQL Server 2008 R2, SQL Server 2012 ili SQL Server 2014 i u tom okidaču spajate umetnutu/izbrisanu tablicu s drugim tablicama. Kada izvršite DML naredbu na ovoj tablici, tijekom sastavljanja okidača može doći do povrede prava pristupa uz prikaz sljedeće pogreške:

Napomena

U trenutnoj naredbi došlo je do ozbiljne pogreške. Rezultate ako takvi mogu biti odbačeni.

Osim toga, u zapisniku o pogreškama sustava SQL Server bilježe se sljedeće pogreške:

Napomena

<Date><Time> spid# ***Stack Dump being sent to <FilePath>\SQLDumpxxx.txt
<Date><Time> spid# SqlDumpExceptionHandler: Proces # generirao je fatalnu iznimku c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server prekida ovaj postupak.
<Date><Time> spid# * *******************************************************************************
<Date><Time> spid# *
<Date><Time> spid# * BEGIN STACK DUMP:
<Date><Time> spid# * <Date><Time> spid #
<Date><Time> spid# *
<Date><Time> spid# *
<Date><Time> spid# * Exception Address = 0000000009E4F2A Module(sqlservr+00000000002D4F2A)
<Date><Time> spid# * Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION
<Date><Time> spid# * Access Violation occurs writing address 00000000000000000
<Date><Time> spid# * Input Buffer 510 bajtova -
<Date><Time> spid# * SQL_query_code

Rješenje

Problem je prvi put riješen u sljedećem kumulativnom ažuriranju sustava SQL Server.

Kumulativno ažuriranje 1 za SQL Server 2012 SP2 /en-us/help/2976982

Kumulativno ažuriranje 2 za SQL Server 2014 /en-us/help/2967546

Kumulativno ažuriranje 10 za SQL Server 2012 SP1 /en-us/help/2954099

Kumulativno ažuriranje 12 za SQL Server 2008 R2 SP2 /en-us/help/2938478

O kumulativnim ažuriranjima za SQL Server

Svako novo kumulativno ažuriranje za SQL Server sadrži sve hitne popravke i sigurnosne popravke koji su obuhvaćeni prethodnim kumulativnim ažuriranjem. Pogledajte najnovija kumulativna ažuriranja za SQL Server:

      

Zaobilazno rješenje

Da biste zaobišli taj problem, ne koristite umetnutu/izbrisanu tablicu izravno u upitu i spajajte je s drugim tablicama, nego je predmemorirajte u privremenu tablicu i u upitu koristite privremenu tablicu.

Status

Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku „Odnosi se na“.