Vzťahuje sa na
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 opravy sú distribuované ako jeden súbor na prevzatie. Opravy sú kumulatívne, každé nové vydanie obsahuje všetky rýchle opravy a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúcej SQL Server 2012 Service Pack 1 opravy.

Príznaky

Keď spustíte príkaz Transact-SQL SQL Server 2012, zobrazí nasledujúce chybové hlásenie:

Nesprávna syntax blízko "begi".

Tento problém sa vyskytuje, ak sú splnené nasledujúce podmienky:

  • Vyhlásenie obsahuje Ak podmienka.

  • Ak podmienka neobsahuje začať a END .

  • Ak podmienkou je nasleduje Skúste začať blok.

  • Ak blok je prekompilovat pri spustení dotazu.

Riešenie

Kumulatívna aktualizácia informácií

Kumulatívna aktualizácia 4 pre SQL Server 2012 SP1

Fix pre tento problém bol prvýkrát vydaný v Kumulatívna aktualizácia 4. Ďalšie informácie o možnostiach získania tento balík Kumulatívna aktualizácia pre SQL Server 2012 SP1, po kliknutí na nasledovné číslo článku nájdete v článku databázy Microsoft Knowledge Base:

2833645 Kumulatívna aktualizácia 4 pre SQL Server 2012 SP1Poznámka: Tieto zostavy sú kumulatívne, každé nové vydanie obsahuje všetky rýchle opravy a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúcej SQL Server 2012 SP1 opraviť uvoľnenia. Odporúčame vám zvážiť použitie Najaktuálnejšieho vydania opravy túto rýchlu opravu obsahuje. Ďalšie informácie získate tak, že kliknutím na nasledujúce číslo článku prejdete na článok databázy Microsoft Knowledge Base:

2772858 SQL Server 2012 zostavy, ktoré boli vydané po bola vydaná SQL Server 2012 Service Pack 1

Stav

Spoločnosť Microsoft potvrdila, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v časti Vzťahuje sa na.

Ďalšie informácie

Ak chcete reprodukovať tento problém, spustite nasledujúce vyhlásenie Transact-SQL 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

Alternatívne riešenie

Tento problém obísť, pridať začať a END IF podmienka.

Odkazy

Ďalšie informácie o prírastkové servis Model pre SQL Server, po kliknutí na nasledovné číslo článku nájdete v článku databázy Microsoft Knowledge Base:

935897 prírastkové servis Model je k dispozícii z SQL Server tímu dodať rýchlych opráv pre nahlásených problémovĎalšie informácie o schéme pomenúvania pre aktualizácie aplikácie SQL Server, po kliknutí na nasledovné číslo článku nájdete v článku databázy Microsoft Knowledge Base:

822499 pomenovania schém pre SQL Server aktualizácie balíkovĎalšie informácie o terminológii z oblasti aktualizácii softvéru získate po kliknutí na nasledovné číslo článku nájdete v článku databázy Microsoft Knowledge Base:

824684 Popis štandardnej terminológie použitej na popis aktualizácií softvéru od spoločnosti Microsoft

Potrebujete ďalšiu pomoc?

Chcete ďalšie možnosti?

Môžete preskúmať výhody predplatného, prehľadávať školiace kurzy, naučiť sa zabezpečiť svoje zariadenie a ešte oveľa viac.