Príznaky
Keď SQL Server používa automatický parametrický dotaz, ktorý nie je možné použiť na vyrovnávaciu pamäť, dotaz môže v zriedkavých podmienkach vyvolať porušenie prístupu. Porušenie prístupu je zaznamenané v denníku chýb servera SQL Server spolu s zásobníkom hovorov, ktorý obsahuje nasledujúci príklad fragmentu:***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\LOG\SQLDump0010.txtSqlDumpExceptionHandler: Process #### generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.* ********************************************************************************* BEGIN STACK DUMP:* date time spid #*** Exception Address = 000007FA0B512E2F Module(sqllang+0000000000E72E2F)* Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION* Access Violation occurred reading address 0000000000000018** Input Buffer ### bytes -* select identifier, registration_date, model, digit, place, failure, address, * remote_control, phone_number, state, location, updated, mta, * home_id, vod_address, observations * from equipment with(nolock) * where branch_group = 1 and equipment_type = 2 * and series = 'SERIES_AAA'* * ******************************************************************************** -------------------------------------------------------------------------------* Short Stack Dump000007FA0B512E2F Module(sqllang+0000000000E72E2F)000007FA0B57D7D2 Module(sqllang+0000000000EDD7D2)000007FA0A74788B Module(sqllang+00000000000A788B)000007FA0A746B5C Module(sqllang+00000000000A6B5C)000007FA0A747034 Module(sqllang+00000000000A7034)000007FA0A746F8C Module(sqllang+00000000000A6F8C)000007FA0A6C9851 Module(sqllang+0000000000029851)000007FA0AB5CF5C Module(sqllang+00000000004BCF5C)000007FA0AB54397 Module(sqllang+00000000004B4397)000007FA09990430 Module(sqldk+0000000000010430)000007FA09990214 Module(sqldk+0000000000010214)000007FA0998FEF7 Module(sqldk+000000000000FEF7)000007FA099AF15F Module(sqldk+000000000002F15F)000007FA099AF1E0 Module(sqldk+000000000002F1E0)000007FA099AE70E Module(sqldk+000000000002E70E)000007FA099AEFB9 Module(sqldk+000000000002EFB9)000007FA17411832 Module(KERNEL32+0000000000001832)000007FA19B1D609 Module(ntdll+000000000005D609) V tomto príklade sú príznaky nasledovné:
-
Jednoduchý dotaz, ktorý obsahuje jednu alebo viac konštánt v klauzule WHERE. SQL Server môže automaticky parameterize tieto konštanty.
-
V reťazci sa vyskytlo porušenie prístupu pri čítaní adresy 0000000000000018. (Tento reťazec sa skončí v "18" v 64-bitových systémoch, "0C" v 32-bitovom systéme.)
-
Obsah krátkeho výpisu zásobníka bude mať rovnakú alebo podobnú hĺbku a relatívne polohy rámov (nie nevyhnutne presnú zhodu). Poznámka: Tento príklad sa prevezme z 64-bitovej inštancie SQL servera. Bude sa líšiť, ale stále sa dá rozpoznať v príklade z 32-bitovej inštancie.
Kumulatívna aktualizácia informácií
Tento problém bol najskôr vyriešený v nasledujúcej kumulatívnej aktualizácii SQL servera.
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:
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.
Odkazy
Oboznámte sa s terminológiou , ktorú spoločnosť Microsoft používa na popis aktualizácií softvéru.