Rakenduskoht
SQL Server 2012 Enterprise SQL Server 2012 Business Intelligence SQL Server 2012 Developer SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2012 Express

Microsoft SQL Server 2012 Service Pack 1 parandusi levitatakse ühe allalaaditava failina. Et parandused on kumulatiivsed, sisaldab iga uus kõiki Kiirparandusi ja kõiki turvaparandusi, mis lisandusid eelmise SQL Server 2012 Service Pack 1 parandada keskkonda.

Sümptomid

Kui Transact-SQL-i lause käivitamine SQL Server 2012, kuvatakse järgmine tõrketeade:

Vale süntaks lähedal 'begi'.

See probleem ilmneb siis, kui täidetud on järgmised tingimused:

  • Aruanne sisaldab kui seisund.

  • Kui seisund ei sisalda BEGIN ja END .

  • Kui seisund järgneb Alustada PROOVIDA blokeerida.

  • Kui plokk on kompileeritud päringu käivitamisel.

Lahendus

Koondvärskenduse teave

SQL Server 2012 SP1 koondvärskenduse 4

Sellele probleemile lahenduse anti esmakordselt välja kumulatiivne värskendus 4. Selle kumulatiivse värskenduspaketi SQL Server 2012 SP1 hankimise kohta lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:

2833645 kumulatiivne värskendus 4 SQL Server 2012 SP1Märkus. Et järgud on kumulatiivsed, iga uus versioon sisaldab kõiki Kiirparandusi ja kõiki turvaparandusi, mis lisandusid eelmise SQL Server 2012 SP1 paranduse väljalaskes. Soovitame rakendada kõige uuema parandustepaketi, mis sisaldab seda kiirparandust. Lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:

2772858 SQL Server 2012 järgud, mis anti välja pärast SQL Server 2012 Service Pack 1

Olek

Microsoft on kinnitanud, et see probleem esineb jaotises "Kehtib järgmiste toodete kohta" loetletud Microsofti toodetel.

Lisateabe saamiseks

Selle probleemi esilekutsumiseks käivitage järgmine Transact-SQL-i SQL Server 2012:DECLARE @i INTIF object_id('tempdb..#temptable') IS NOT NULLDROP TABLE #temptableCREATE TABLE #temptable (id INT)INSERT INTO #temptable VALUES (1),(2),(3);IF year(getdate())=2012 SELECT @i=(SELECT COUNT(*) AS nr FROM #temptable);BEGIN TRYSELECT 'message'END TRYBEGIN CATCHSELECT ERROR_MESSAGE()END CATCH

Lahendus

Selle probleemi lahendamiseks lisage BEGIN ja END IF tingimuse.

Viited

SQL serveri astmelise Hooldusmudeli kohta lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:

935897 Astmeline teeninduse mudel on saadaval SQL serveri meeskond pakkuda teatatud probleemidele KiirparandusiSQL serveri värskenduste nimetamise kohta lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:

822499 failinimede skeem Microsoft SQL serveri tarkvaravärskenduspakettideLisateabe saamiseks tarkvaravärskenduste terminoloogia kohta klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:

824684 Microsofti tarkvaravärskenduste iseloomustamiseks kasutatavate standardterminite kirjeldus

Kas vajate veel abi?

Kas soovite rohkem valikuvariante?

Siin saate tutvuda tellimusega kaasnevate eelistega, sirvida koolituskursusi, õppida seadet kaitsma ja teha veel palju muud.