Společnost Microsoft distribuuje aktualizaci Microsoft SQL Server 2012 Service Pack 1 jako jeden soubor ke stažení. Vzhledem k tomu, že opravy jsou kumulativní, obsahuje každá nová verze všechny opravy hotfix a všechny opravy zabezpečení zahrnuté v předchozí opravě aktualizace SQL Server 2012 Service Pack 1.
Příznaky
Předpokládejme, že spouštíte dotaz, který používá funkci TRY_CONVERT spolu s parametrem style v aplikaci Microsoft SQL Server 2012. V takovém případě může být parametr style ignorován a dotaz může vrátit nesprávný výsledek.
Řešení
Informace o kumulativní aktualizaci
Kumulativní aktualizace 2 pro SQL Server 2012 SP1
Oprava tohoto problému byla poprvé vydána v kumulativní aktualizaci 2. Další informace o tom, jak získat tento kumulativní aktualizační balíček pro SQL Server 2012 SP1, získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2790947 kumulativní aktualizační balíček 2 pro SQL Server 2012 Service Pack 1Poznámka: Vzhledem k tomu, že sestavení jsou kumulativní, každá nová oprava obsahuje všechny opravy hotfix a všechny opravy zabezpečení zahrnuté v předchozím vydání opravy SQL Server 2012 SP1. Doporučujeme zvážit použití nejnovější verze opravy, která obsahuje tuto opravu hotfix. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
2772858 sestavení serveru sql Server 2012, která byla vydána po vydání aktualizace SQL Server 2012 Service Pack 1
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.
Další informace
Chcete-li tento problém zopakovat, postupujte následujícím způsobem:
-
Vytvořte tabulku v produktu SQL Server 2012 SP1 s názvem test a do tabulky vložte záznam:CREATE TABLE TEST (I DATE);INSERT INTO TEST VALUES (GETDATE());
-
Chcete-li vrátit správný výsledek, spusťte následující dotazy:SELECT TOP 1 TRY_CONVERT(VARCHAR, TRY_CONVERT(DATE, '20121023'), 112) FROM TEST;SELECT CONVERT(VARCHAR, TRY_CONVERT(DATE, '20121023'), 112) FROM TEST;SELECT CONVERT(VARCHAR, CONVERT(DATE, '20121023'), 112) FROM TEST;SELECT TRY_CONVERT(VARCHAR, '20121023', 112) FROM TEST;--The returned result is "20121023".
-
Potom spuštěním následujících dotazů vraťte nesprávný výsledek:SELECT TRY_CONVERT(VARCHAR, TRY_CONVERT(DATE, '20121023'), 112) FROM TEST;SELECT TRY_CONVERT(VARCHAR, CONVERT(DATE, '20121023'), 112) FROM TEST;--The returned result is "2012-10-23".
Odkazy
Další informace o funkci TRY_CONVERT (Transact-SQL) naleznete na následujícím webu MSDN:
Obecné informace o funkci TRY_CONVERT (Transact-SQL)Další informace o modelu přírůstkového servisu pro SQL Server získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
935897 model přírůstkové obsluhy je k dispozici v týmu serveru SQL Server, který dodává opravy hotfix pro ohlášených problémůDalší informace o schématu pojmenování pro aktualizace serveru SQL Server získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
822499 schéma pojmenování pro balíčky aktualizací softwaru serveru Microsoft SQL ServerDalší informace o terminologii související s aktualizací softwaru získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
824684 Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft