новые возможности в интеграции со средой CLR
Ниже перечислены новые функции интеграции со средой CLR в SQL Server 2012.
В версии 4 среды CLR объекты базы данных среды CLR больше не перехватывают исключения состояния повреждения. Теперь эти исключения перехватываются на уровне интеграции со средой CLR. Эти исключения все еще могут перехватываться компонентами базы данных среды CRL путем задания атрибута кода элемента (<legacyCorruptedStateExceptionsPolicy> Element). Тем не менее делать это не рекомендуется, поскольку при возникновении исключения состояния повреждения добиться хороших результатов невозможно.
В соответствии с требованиями строгой безопасности SQL Server 2012, компоненты базы данных среды CLR продолжат использовать модель управления доступом для кода, определенную в среде CLR версии 2.0.
В среде CLR версии 4 ошибка формата в значении System.TimeSpan формирует исключение System.FormatExceptions. До выхода версии 4 среды CLR ошибка формата в значении System.TimeSpan не обрабатывалась. Приложения баз данных, которые зависят от поведения, характерного для среды CLR версии ниже 4, должны выполняться с уровнем совместимости базы данных (ALTER DATABASE Compatibility Level) 100 или ниже. Дополнительные сведения см. в разделе <TimeSpan_LegacyFormatMode> Element.
Версия 4 среды CLR поддерживает Юникод 5.1. Операции сортировки с учетом некоторых диакритических знаков и символов будут улучшены. Если приложение использует устаревший порядок сортировки, могут возникнуть проблемы с совместимостью. Чтобы включить устаревший порядок сортировки, необходимо установить уровень совместимости базы данных (ALTER DATABASE Compatibility Level) 100 или ниже. Для поддержи этого порядка сортировки SQL Server 2012 установит файл sort00001000.dll в каталог .NET Framework 4 (C:\Windows\Microsoft.NET\Framework\v4.0.30319). Дополнительные сведения см. в разделе <CompatSortNLSVersion> Element.
К sys.dm_clr_appdomains были добавлены следующие столбцы: total_processor_time_ms, total_allocated_memory_kb и survived_memory_kb.