NUSTATYTI: Loginė klaida, kai pakeičiate stulpelį, SQL serverio 2014 m.

SVARBU: šis straipsnis išverstas naudojant „Microsoft“ mašininio vertimo programinę įrangą ir gali būti pataisytas naudojant „Community Translation Framework“ (CTF) technologiją. „Microsoft“ siūlo mašinos išverstus ir po to bendruomenės suredaguotus straipsnius, taip pat žmogaus išverstus straipsnius siekdama suteikti prieigą prie visų savo žinių bazės straipsnių daugeliu kalbų. Mašinos išverstuose ir vėliau paredaguotuose straipsniuose gali būti žodyno, sintaksės ir / arba gramatikos klaidų. „Microsoft“ neatsako už jokius netikslumus, klaidas arba žalą, patirtą dėl neteisingo turinio vertimo arba mūsų klientų naudojimosi juo. Daugiau apie CTF žr. http://support.microsoft.com/gp/machine-translation-corrections.

Spustelėkite čia, norėdami pamatyti šio straipsnio versiją anglų kalba: 3098529
Požymiai
Tarkime, kad lentelė, kurioje yra sankaupos columnstore rodyklės Microsoft SQL Server 2014. Paleidžiate DDL užklausą pagal lentelę, kurią norite pakeisti esamo stulpelio duomenų tipą. Pvz., galite atnaujinti duomenų tipas Column_1, Table_1 iš VARCHAR (499 lt) ir NVARCHAR (500) vykdydami šią komandą:
ALTER TABLE Table_1 ALTER COLUMN Column_1 NVARCHAR(500) NOT NULL
Tokiu atveju kelis teiginį gedimui, ir gaunate tokį klaidos pranešimą:
Vieta:Failo maršrutas> \xmcolenc.inl:413
Expression: PF_CURRENT_STATUS == PFS_OK
(į XMColumnEncodernepasirašytas *>:: EncodeValueForSecondary)
SPID:SPID>
Proceso ID:Proceso ID >
Aprašymas: hr: 0x0

Vieta:Failo maršrutas> \xmerror.cpp:43
Expression: 0
(į PFSetLastError)
SPID:SPID>
Proceso ID:Proceso ID>
Aprašymas: hr: 0x0

Be to, daug atminties iškelties failus sugeneruoti SQL serverio klaidos žurnale aplanke, ir SQL serverio klaidos žurnale užregistruojami keli klaidų pranešimus, panašius į šiuos:
Data laikas> spidID> *** Dėklo iškelties siunčiamaDisko pavadinimas>: \Program SQL Server\MSSQL12. SQL2014\MSSQL\LOG\SQLDump0002.txt
Data laikas> spidID> * *******************************************************************************
Data laikas> spidID>*
Data laikas> spidID> * PRADĖTI RIETUVĖS IŠKELTIS:
Data laikas> spidID>*Data laikas> spidID>
Data laikas> spidID> * Privatus serveris Komponavimo versija.
Data laikas> spidID>*
Data laikas> spidID> * Vieta:Failo maršrutas> \xmcolenc.inl:413
Data laikas> spidID> * Išraiška: PF_CURRENT_STATUS == PFS_OK
Data laikas> spidID> * (– XMColumnEncodernepasirašytas *>:: EncodeValueForSecondary)
Data laikas> spid<ID>* SPID: 60</ID>
Data laikas> spidID> * Proceso ID: 3680
Data laikas> spidID> * Aprašymas: hr: 0x0
Data laikas> spidID>*
Data laikas> spidID> * Įvesties buferio 136 baitų -
Data laikas> spidID> * ALTER TABLE Table_1 pakeisti stulpelio Stulp1 NVARCHAR(500), NOT NULL;
Sprendimas
Pritaikius šias karštąsias pataisas, galite gauti šį naują klaidos pranešimą nepavykus DDL užklausa:
ALTER TABLE patvirtinimas nepavyko, nes papildomą žodynas pasiekė didžiausią ribą. Mano mažėja columnstore indeksą, pakeisti stulpelį, tada sukurti naują columnstore indeksas

Šis taisymas taip pat apsaugo nuo atminties iškelties failus iš SQL serverio klaidos žurnale sukurtas.

Problema pirmą kartą buvo išspręsta toliau kaupiamieji naujinimai SQL serverio: Rekomendacija: Įdiegti naujausią kaupiamąjį naujinimą SQL Server
SQL serverio kiekvieną naują Kaupiamasis naujinimas yra visos karštosios ir naujausios saugos pataisos, kurios buvo įtrauktos į ankstesnio kaupiamojo naujinimo. Rekomenduojame atsisiųsti ir įdiegti SQL Server kaupiamieji naujinimai:
Būsena
„Microsoft“ patvirtino, kad tai yra „Microsoft“ produktų, išvardytų skyriuje „Taikoma“, problema.

Įspėjimas: šis straipsnis išverstas automatiškai

Savybės

Straipsnio ID: 3098529 – Paskutinė peržiūra: 03/14/2016 10:38:00 – Peržiūra: 3.0

Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Service Pack 1

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB3098529 KbMtlt
Atsiliepimai