Microsoft разпространява Microsoft SQL Server 2005, Microsoft SQL Server 2008 и Microsoft SQL Server 2008 R2 поправя като един файл за изтегляне. Тъй като корекциите са кумулативни, всяка нова версия съдържа всички актуални корекции и всички корекции на защитата, които са били включени в предишния SQL Server 2005, Microsoft SQL Server 2008 и SQL Server 2008 R2 Fix Release.Корекцията, която е описана в тази статия, е налична за следните версии на SQL Server:
-
Microsoft SQL Server 2005 Service Pack 3 (SP3)
-
Microsoft SQL Server 2005 Service Pack 4 (SP4)
-
Microsoft SQL Server 2008 Service Pack 1 (SP1)
-
Microsoft SQL Server 2008 Service Pack 2 (SP2)
Симптоми
Обмислете следния сценарий:
-
Създавате свързан сървър на компютър, на който се изпълнява Microsoft SQL Server 2005, Microsoft SQL Server 2008 или Microsoft SQL Server 2008 R2. Свързаният сървър сочи към източник на данни от OLE DB на отдалечен сървър.
-
Създавате синоним за таблица в свързания сървър.
-
Създавате дефинирана от потребителя функция, която използва синонима или създавате изглед, който използва синонима. След това изпълнявате заявка спрямо дефинираната от потребителя функция или изгледа.Забележка Когато стартирате заявката, се кешира план за изпълнение.
-
Извършвате операция на отдалечен сървър, за да актуализирате версията на схемата на таблицата в свързания сървър. Можете например да създадете отново индекса на таблицата на отдалечения сървър, за да актуализирате версията на схемата на таблицата в свързания сървър.
-
Изпълните друга заявка спрямо дефинираната от потребителя функция или изгледа.
В този случай получавате съобщение за грешка, подобно на следното:
Server: MSG 7359, номерна ниво на държава, номер на щатско състояние, номерна линия на OLE база данни доставчик "име на доставчик" за свързания сървър "име на свързансървър" съобщава за промяна на версията на схема между компилация Time ("компилация Time") и оперативно време ("Оперативно време") за таблица "име на свързанатаблица".
Името на доставчика на Забележка е контейнер, който представя името на доставчика на OLE база данни. Име на свързана таблица е контейнер, който представя името на таблицата, която е в свързания сървър.
Причина
Този проблем възниква, защото съществуващият план за изпълнение не е изчистен правилно. Това води до промяна на версията на схемата, тъй като функцията, дефинирана от потребителя, или изгледът се компилира отново при изпълнение на Втората заявка. Следователно грешката възниква.
Решение
Информация за сборна актуализация
SQL Server 2008 R2 сервизен пакет 1
Корекцията за този проблем е издадена за първи път в сборна актуализация 1 за SQL Server 2008 R2 Service Pack 1. За повече информация как да получите тази сборна актуализация, щракнете върху следния номер на статия, за да видите статията в базата знания на Microsoft:
2544793 Кумулативна актуализация на пакета 1 за SQL Server 2008 R2 Service Pack 1Забележка Тъй като компилациите са кумулативни, всяко ново издание за корекция съдържа всички поправки и всички корекции на защитата, които са били включени при предишното издание на SQL Server 2008 R2. Препоръчваме ви да обмислите прилагането на най-новото съобщение за корекция, което съдържа тази спешна корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2567616 SQL Server 2008 R2 изгражда, които са издадени след SQL Server 2008 R2 Service Pack 1 е издадена
SQL Server 2008 R2
Корекцията за този проблем е издадена за първи път в сборна актуализация 7. За повече информация как да получите тази кумулативна актуализация на пакета за SQL Server 2008 R2, щракнете върху следния номер на статия, за да видите статията в базата знания на Microsoft:
2507770 Кумулативна актуализация на пакета 7 за SQL Server 2008 R2 Забележка Тъй като компилациите са кумулативни, всяко ново издание за корекция съдържа всички поправки и всички корекции на защитата, които са били включени при предишното издание на SQL Server 2008 R2. Препоръчваме ви да обмислите прилагането на най-новото съобщение за корекция, което съдържа тази спешна корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
981356 SQL Server 2008 R2, които са издадени след издаването на SQL Server 2008 R2
За SQL Server 2005 SP3
Корекцията за този проблем е издадена за първи път в сборна актуализация 15. За повече информация как да получите тази кумулативна актуализация на пакета за SQL Server 2005 SP3, щракнете върху следния номер на статия, за да видите статията в базата знания на Microsoft:
2507766 Кумулативна актуализация на пакета 15 за SQL Server 2005 SP3 Забележка Тъй като компилациите са кумулативни, всяко ново съобщение за корекция съдържа всички поправки и всички корекции на защитата, които са били включени при предишното издание на 2005 SP3 на SQL Server. Препоръчваме ви да обмислите прилагането на най-новото съобщение за корекция, което съдържа тази спешна корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
960598 SQL Server 2005 компилации, които са издадени след издаването на SQL Server 2005 SP3
За SQL Server 2005 SP4
Корекцията за този проблем е издадена за първи път в сборна актуализация 3. За повече информация как да получите тази кумулативна актуализация на пакета за SQL Server 2005 SP4, щракнете върху следния номер на статия, за да видите статията в базата знания на Microsoft:
2507769 Кумулативна актуализация на пакет 3 за SQL Server 2005 SP4Забележка Тъй като компилациите са кумулативни, всяко ново съобщение за корекция съдържа всички поправки и всички корекции на защитата, които са били включени в предишния SQL Server 2005 SP4 Fix Release. Препоръчваме ви да обмислите прилагането на най-новото съобщение за корекция, което съдържа тази спешна корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
937137 SQL Server 2005 компилации, които са издадени след издаването на SQL Server 2005 SP4
За SQL Server 2008 SP1
Корекцията за този проблем е издадена за първи път в сборна актуализация 13. За повече информация как да получите тази кумулативна актуализация на пакета за SQL Server 2008 SP1, щракнете върху следния номер на статия, за да видите статията в базата знания на Microsoft:
2497673 Кумулативна актуализация на пакета 13 за SQL Server 2008 SP1 Забележка Тъй като компилациите са кумулативни, всяко ново съобщение за корекция съдържа всички поправки и всички корекции на защитата, които са били включени в предишното издание на SQL Server 2008 SP1. Препоръчваме ви да обмислите прилагането на най-новото съобщение за корекция, което съдържа тази спешна корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
970365 SQL Server 2008 компилации, които са издадени след издаването на SQL Server 2008 SP1
За SQL Server 2008 SP2
Корекцията за този проблем е издадена за първи път в сборна актуализация 3. За повече информация как да получите тази кумулативна актуализация на пакета за SQL Server 2008 SP2, щракнете върху следния номер на статия, за да видите статията в базата знания на Microsoft:
2498535 Кумулативна актуализация на пакет 3 за SQL Server 2008 SP2Забележка Тъй като компилациите са кумулативни, всяко ново издание за корекция съдържа всички поправки и всички корекции на защитата, които са били включени при предишното издание на SQL Server 2008 SP2. Препоръчваме ви да обмислите прилагането на най-новото съобщение за корекция, което съдържа тази спешна корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2402659 SQL Server 2008 компилации, които са издадени след издаването на SQL Server 2008 SP2
Състоянието
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са посочени в секцията "важи за".
Повече информация
За повече информация как да използвате "преговаряне – SQL" за създаване на синоними, посетете следния уеб сайт на Microsoft Developer Network (MSDN):