CLR 통합의 새로운 변경사항은 무엇인가요?
적용 대상:SQL Server
다음은 SQL Server 2012(11.x) 이상 버전에서 .NET Framework CLR(공용 언어 런타임) 통합의 새로운 기능입니다.
CLR 버전 4에서는 CLR 데이터베이스 개체가 더 이상 손상된 상태 예외를 catch하지 않습니다. 이러한 예외는 이제 CLR 통합 호스팅 계층에서 캐치됩니다. CLR 데이터베이스 구성 요소는 여전히 코드 특성(<legacyCorruptedStateExceptionsPolicy> Element)을 설정하여 이러한 예외를 처리할 수 있습니다. 그러나 손상된 상태 예외가 발생할 때 결과를 신뢰할 수 없으므로 이 특성은 권장되지 않습니다.
SQL Server의 엄격한 보안 요구 사항으로 인해 CLR 데이터베이스 구성 요소는 CLR 버전 2.0에 정의된 코드 액세스 보안 모델을 계속 사용합니다.
CLR 버전 4에서
System.TimeSpan
값의 형식 오류는System.FormatException
오류를 생성합니다. CLR 버전 4 이전에는System.TimeSpan
값의 형식 오류가 무시되었습니다. CLR 버전 4 이전의 동작을 사용하는 데이터베이스 애플리케이션은 데이터베이스 호환성 수준 100 이하로 실행해야 합니다. 자세한 내용은 <TimeSpan_LegacyFormatMode> 요소를 참조하세요.CLR 버전 4는 유니코드 5.1을 지원합니다. 일부 강조 표시 및 기호와 관련된 정렬 작업이 향상되었습니다. 애플리케이션이 레거시 정렬 동작을 사용하는 경우 호환성 문제가 발생할 수 있습니다. 레거시 정렬을 사용하도록 설정하려면 데이터베이스 호환성 수준 100 이하로 설정해야 합니다. 이 기능을 지원하기 위해 SQL Server 2012(11.x)는 .NET Framework 4 디렉터리(
C:\Windows\Microsoft.NET\Framework\v4.0.30319
)에sort00001000.dll
설치합니다. 자세한 내용은 <CommandPlacements> 요소를 참조하세요.다음 열이 sys.dm_clr_appdomains에 추가되었습니다:
total_processor_time_ms
,total_allocated_memory_kb
및survived_memory_kb
.