Tünetek
Tegyük fel, hogy van egy olyan táblája, amelyhez DML-eseményindító tartozik a Microsoft SQL Server 2008 R2-ben, az SQL Server 2012-ben vagy az SQL Server 2014-ben, és ebben az eseményindítóban más táblákhoz illeszti a beszúrt/törölt táblákat. Ha ezen a táblán DML-utasítást hajt végre, hozzáférés-megsértés történhet az eseményindítók fordítása közben, és a következő hibaüzenet jelenhet meg:
Megjegyzés
Súlyos hiba történt az aktuális parancsban. Az esetleges eredményeket el kell vetni.
Emellett a rendszer a következő hibákat naplózza az SQL Server hibanaplójába:
Megjegyzés
<Dátum><és idő> spid# ***A memóriakép elküldése a <FilePath>\SQLDumpxxx.txt-nek
<Dátum><és idő> spid# SqlDumpExceptionHandler: Process # generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. Az SQL Server leállítja ezt a folyamatot.
<Dátum><és idő> spid# * *******************************************************************************
<Dátum><és idő> spid# *
<Date><Time> spid# * STACK DUMP BEGIN STACK DUMP:
<Dátum><és idő> spid# * <Dátum><és idő> spid #
<Dátum><és idő> spid# *
<Dátum><és idő> spid# *
<Dátum><és idő> spid# * Kivételcím = 00000000009E4F2A Modul(sqlservr+000000000002D4F2A)
<Dátum><és idő> spid# * Kivételkód = c0000005 EXCEPTION_ACCESS_VIOLATION
<Dátum><és idő> spid# * Hozzáférés-megsértés történt 0000000000000000 cím írásakor
<Dátum><és idő> spid# * Bemeneti puffer 510 bájt -
<Dátum><és idő> spid# * SQL_query_code
Megoldás
A hibát először az SQL Server következő összegző frissítésében javítottuk.
1. összegző frissítés a SQL Server 2012 SP2 rendszerhez /en-us/help/2976982
2. összegző frissítés a SQL Server 2014-hez /en-us/help/2967546
10-es összegző frissítés a SQL Server 2012 SP1 rendszerhez /en-us/help/2954099
12-es összegző frissítés a SQL Server 2008 R2 SP2 rendszerhez /en-us/help/2938478
Az SQL Server összegző frissítéseinek ismertetése
Az SQL Server minden új összegző frissítése tartalmazza az összes gyorsjavítást és minden biztonsági javítást, amely az előző kumulatív frissítésben szerepelt. Tekintse meg az SQL Server legújabb összegző frissítéseit:
- Az SQL Server 2012 SP2 legújabb összegző frissítése
- Az SQL Server 2014 legújabb összegző frissítése
- Az SQL Server 2012 SP1 legújabb összegző frissítése
- Az SQL Server 2008 R2 SP2 legújabb összegző frissítése
Kerülő megoldás
A probléma megoldásához ne használja a beszúrt/törölt táblát közvetlenül egy lekérdezésben, hanem csatlakoztassa azt más táblákkal, hanem gyorsítótárazza egy ideiglenes táblában, és használja a temp táblát a lekérdezésben.
Állapot
A Microsoft megerősítette, hogy ez egy olyan probléma a Microsoft-termékekben, amely az „Érintett szolgáltatás“ című szakaszban van felsorolva.