Microsoft разпространява Microsoft SQL Server 2008 Service Pack 3 (SP3) като един файл за изтегляне. Тъй като корекциите са кумулативни, всяка нова версия съдържа всички актуални корекции и всички корекции на защитата, които са били включени в предишното издание на SQL Server 2008 Service Pack 3 (SP3).
Симптоми
Обмислете следния сценарий:
-
Имате пример за геометрия и екземпляр на GEOMETRYCOLLECTION , който съдържа пресичащи се полигони в Microsoft SQL Server 2008.
-
Създавате заявка, в която се извиква методът за зашеметяване () между двата екземпляра.
-
Опитвате се да изпълните заявката.
В този случай пресечната точка на многоъгълниците на екземплярите на GEOMETRYCOLLECTION не се съдържа в резултата на заявката, който методът на зашеметяване () връща.
Причина
Този проблем възниква поради дефект на код в метода на зашеметяване () .
Решение
Информация за сборна актуализация
Кумулативна актуализация на пакет 3 за SQL Server 2008 SP3
Корекцията за този проблем е издадена за първи път в сборна актуализация 3. За повече информация как да получите тази кумулативна актуализация на пакета за SQL Server 2008 Service Pack 3, щракнете върху следния номер на статия, за да видите статията в базата знания на Microsoft:
2648098 Кумулативна актуализация на пакет 3 за SQL Server 2008 Service Pack 3Забележка Тъй като компилациите са кумулативни, всяко ново издание за корекция съдържа всички спешни корекции и всички корекции на защитата, които са били включени в предишния SQL Server 2008 Service Pack 3 Fix Release. Препоръчваме ви да обмислите прилагането на най-новото съобщение за корекция, което съдържа тази спешна корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2629969 SQL Server 2008 компилации, които са издадени след SQL Server 2008 Service Pack 3 е издадена
Повече информация
За да възпроизведете този проблем, изпълнете следните стъпки:
-
Изпълнете следната заявка в студио за управление на Microsoft SQL Server:
DECLARE @p1 geometry = 'GEOMETRYCOLLECTION (POLYGON ((0 0, 1 1, 1 0, 0 0)), POLYGON ((0.5 0, 1.5 1, 1.5 0, 0.5 0)))';DECLARE @p2 geometry = 'POINT(0 1)';SELECT @p1.STUnion(@p2)
-
Щракнете върху раздела пространствени резултати на резултата, върнат от заявката.
Ако пресечната точка на два триъгълника от първия параметър липсва, значи сте възпроизвели проблема успешно.
Състоянието
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са посочени в секцията "важи за".