Симптоми
Имайте предвид сценария, описан по-долу:
- Можете да създадете симетричен ключ от доставчик на Extensible Key Management (EKM) в Microsoft SQL Server 2008, Microsoft SQL Server 2012 или Microsoft SQL Server 2008 R2.
- С помощта на този симетричен ключ шифровате някои данни в база данни.
- Трябва да мигрирате данните в друга база данни.
- Опитвате се да създадете симетричен ключ в новата база данни от същия доставчик на EKM. Обаче шифрованите данни в новата база данни не могат да бъдат дешифрирани, защото новосъздаденият симетричен ключ има GUID номер и този GUID номер се различава от първоначалния симетричен ключ, който е шифровал данните в първоначалната база данни.
- За да създадете отново симетричния ключ, като използвате същия GUID като оригиналния симетричен ключ, използвайте опцията IDENTITY_VALUE, за да укажете фразата за самоличност, използвана с първоначалния симетричен ключ.
В този случай получавате съобщение за грешка, подобно на следното:
Забележка
Съобщение 102, ниво 15, състояние 1, ред 3 Неправилен синтаксис близо до 'IDENTITY_VALUE'
Решение
Кумулативна информация за актуализацията
Сборна актуализация 6 за SQL Server 2012
Корекцията за този проблем е издадена за първи път в кумулативна актуализация 6. За допълнителна информация как да получите този сборен пакет за актуализация за SQL Server 2012, щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2728897 Сборен пакет за актуализация 6 за SQL Server 2012Note Тъй като компилациите са кумулативни, всяко ново издание на корекции съдържа всички актуални поправки и корекции на защитата, които са включени в предишното издание на корекция SQL Server 2012. Препоръчваме ви да помислите за прилагане на най-новото издание на корекцията, което съдържа тази гореща корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2692828 Компилациите на SQL Server 2012, които са издадени след издаването на SQL Server 2012
Сборна актуализация 11 за SQL Server 2008 R2 Service Pack 1
Корекцията за този проблем е издадена за първи път в кумулативна актуализация 11. За повече информация как да получите този сборен пакет за актуализация за SQL Server 2008 R2 Service Pack 1, щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2812683 Сборен пакет 11 за SQL Server 2008 R2 Service Pack 1Note Тъй като компилациите са кумулативни, всяка нова корекция съдържа всички актуални поправки и корекции на защитата, които са включени в предишното издание на корекция за SQL Server 2008 R2 Service Pack 1. Препоръчваме ви да помислите за прилагане на най-новото издание на корекцията, което съдържа тази гореща корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2567616 Компилациите на SQL Server 2008 R2, които са издадени след издаването на SQL Server 2008 R2 Service Pack 1
Сборна актуализация 9 за SQL Server 2008 Service Pack 3 (SP3)
Корекцията за този проблем е издадена за първи път в кумулативна актуализация 9. За повече информация как да получите този сборен пакет за актуализация за SQL Server 2008 Service Pack 3, щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2799883 Сборен пакет за актуализация 9 за SQL Server 2008 Service Pack 3Note Тъй като компилациите са кумулативни, всяко ново издание на корекции съдържа всички актуални поправки и корекции на защитата, които са включени в предишното издание на корекцията на SQL Server 2008 Service Pack 3. Препоръчваме ви да помислите за прилагане на най-новото издание на корекцията, което съдържа тази гореща корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2629969 Компилациите на SQL Server 2008, които са издадени след издаването на SQL Server 2008 Service Pack 3
Сборна актуализация 4 за SQL Server 2008 R2 Service Pack 2 (SP2)
Корекцията за този проблем е издадена за първи път в кумулативна актуализация 4. За допълнителна информация как да получите този сборен пакет за актуализация за SQL Server 2008 R2 Service Pack 2, щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2777358 Сборен пакет за актуализация 4 за SQL Server 2008 R2 Service Pack 2Note Тъй като компилациите са кумулативни, всяко ново издание на корекции съдържа всички актуални поправки и корекции на защитата, които са включени в предишното издание на корекция за SQL Server 2008 R2 Service Pack 2. Препоръчваме ви да помислите за прилагане на най-новото издание на корекцията, което съдържа тази гореща корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
2730301 Компилациите на SQL Server 2008 R2, които са издадени след издаването на SQL Server 2008 R2 Service Pack 2
Заобиколно решение
За да заобиколите този проблем, дешифрирайте данните, преди да ги мигрирате към втората база данни. След като мигрирате данните в другата база данни, използвайте нов ключ, за да шифровате данните.
Състояние
Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.