Преминаване към основното съдържание
Поддръжка
Влизане с Microsoft
Влезте или създайте акаунт.
Здравейте,
Изберете друг акаунт.
Имате няколко акаунта
Изберете акаунта, с който искате да влезете.

Грешка #: 490 (SQL корекция)

Резюме

Когато се опитате да надстроите или понижите комплект за общ език среда CLR обект в случай на Microsoft SQL Server 2005, можете да променяте версията на указаната възли в метаданните на събрание. Освен това ако използвате силно име блок за CLR обект, не понижи събрание с помощта на отчета за промени на събрание.

Въведение

Тази статия се описва как да надстроите или понижите комплект с указаната събрание CLR обект в екземпляр на SQL Server 2005.

Допълнителна информация

Как да надстроите или понижите събрание

В SQL Server 2005 можете да използвате отчета ПРОМЕНЯ събрание да надстроите или понижите самостоятелен блок, създадена със силно име. За силно име блок да надстроите, но не може да понижи събрание с помощта на отчета за промени на събрание.

Не можете да надстроите или връщането на събрание в следния сценарий:

  • Блокът е създаден за CLR обект в копие. Блокът има препращаща събрание. Препращаща е блок б.

  • Блок Б е не указаната събрание.

  • Се компилира блокът справка с друга версия на блок б.

В този случай можете да използвате ПРОМЕНЯ събрание отчет за надграждане блок B до нова версия. Ако блок B не е силно име блок, също може да понижи блок B стара версия. Обаче не можете да използвате промени събрание отчет за надграждане или връщането на събрание recompiled версия.

Това поведение възниква, тъй като SQL Server създава CLR фюжън правилата, когато създавате блок а. Тази политика CLR фюжън автоматично съпоставя версията на блок B в метаданните на събрание на с актуалната версия на събрание B. SQL Server зарежда новата версия на блок B по време на изпълнение при надграждане или downgrade блок Б някои друга версия. Това поведение възниква, въпреки че блокът се отнася до оригиналната версия на блок б. Въпреки това, когато се опитате да надстроите или понижите блок А когато блок A съдържа нова версия на блок B в метаданните, ПРОМЕНЯ събрание декларация ще бъде неуспешно и получавате съобщения за грешка от следния вид:

Съобщение за грешка 1

MSG 6529, ниво 16 състояние 1, ред 1

ALTER събрание е неуспешно, защото идентичността на указаната блок "RefAsm" е променено. Уверете се, че версията, името и публичния ключ не са се променили.

Съобщение за грешка 2

MSG 6282, ниво 16 състояние 1, ред 1

ПРОМЯНА на събрание е неуспешно, защото указаната възли ще се промени. Препращаща събрание списък трябва да се запазват.

Надграждане или връщането на събрание

Бележки

  • Тези стъпки надграждане или връщането на събрание в сценарий, който е описан в раздела "Как да надстроите или понижите събрание".

  • Този пример предполага, че версиите на две устройства са 1.0.0.0 и възли са изписани, C#. Когато следвате тези стъпки, Опитвате се да инсталирате версия 2.0.0.0 блок А и блок Б.

За надграждане или връщането на събрание, следвайте тези стъпки.

  1. Архивирайте версия 1.0.0.0 събрание B папка.

  2. Промените и след това компилирате блок B до версия 2.0.0.0.

  3. Използвайте промени събрание отчет за надграждане блок B в SQL Server 2005.

  4. Промените и след това компилирате блокът до версия 2.0.0.0. Когато направите това, препратка версия 1.0.0.0 събрание B от архив, които сте направили в стъпка 1. За да направите това, използвайте инструмента Csc.exe компилатор заедно с параметъра /reference . Например използвайте следната команда:

    CSC /target:library/изход:AssemblyA.dll AssemblyA.cs AssemblyInfo.cs /reference: "BackupFolder\AssemblyB.dll"Забележка: За да проверите версията на блок B в метаданните на блокът, отворете събрание А чрез помощната програма за Ildasm.exe. След това проверете информация за указаната събрание под раздела ПРОЯВИ на метаданни.

  5. Използвайте промени събрание отчет за надграждане на събрание на SQL Server 2005.

Как да се понижи силно име блок

Ако използвате силно име блок за CLR обект, SQL Server 2005 не поддържа използването на отчета за промени на събрание връщането възли. Ако се опитате да понижи версията на събрание с помощта на отчета за промени на събрание, ще получите съобщение за грешка, подобно на следното:

MSG 6579, ниво 16 състояние 1, ред 1
Alter събрание от "Asm1, версия = 1.1.0.0, култура = неутрален, publickeytoken = 3a52b896cff0513d, processorarchitecture = msil" до "Asm1, версия = 1.0.0.0, култура = неутрален, publickeytoken = 3a52b896cff0513d, processorarchitecture = msil" не е съвместим надстройка.

Когато искате да понижи силно име блок, изпълнете следните стъпки:

  1. Пуснете всички обекти, които зависят от събрание.

  2. Пуснете нова версия на събрание.

  3. Създаване на по-старата версия на събрание.

  4. Създаване на всички необходими обекти, които зависят от събрание.

Забележка: Можете да надстроите силно име блок с помощта на отчета за промени на събрание. Обаче ако upgrade включва препратки събрание, трябва да следвате същите стъпки, които са изброени в раздела "Upgrade или downgrade събрание".

Препратки

За повече информация относно ПРОМЕНИТЕ събрание отчет посетете следния уеб сайт на Microsoft Developer Network (MSDN):

http://msdn2.microsoft.com/en-us/library/ms186711.aspxЗа повече информация относно Ildasm.exe програма посетете следния сайт на MSDN:

http://msdn2.microsoft.com/en-us/library/aa309387(VS.71).aspx

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

Общностите ви помагат да задавате и отговаряте на въпроси, да давате обратна връзка и да получавате информация от експерти с богати знания.

Беше ли полезна тази информация?

Доколко сте доволни от качеството на езика?
Какво е повлияло на вашия потребителски опит?
Като натиснете „Подаване“, вашата обратна връзка ще се използва за подобряване на продуктите и услугите на Microsoft. Вашият ИТ администратор ще може да събира тези данни. Декларация за поверителност.

Благодарим ви за обратната връзка!

×