CLR 整合的新功能

以下是 SQL Server 2012 (11.x) 中 CLR 整合的新功能:

  • 在 CLR 的版本 4 中,CLR 資料庫物件不再攔截損壞的狀態例外狀況。 這些例外狀況現在會在 CLR 整合裝載層中攔截。 在舊版CorruptedStateExceptionsPolicy > 元素 () 設定程式碼屬性, <CLR 資料庫元件仍然可以攔截這些例外狀況。 但是不建議您這樣做,因為當發生損壞的狀態例外狀況時,結果就不可靠。

  • 由於SQL Server 2012 (11.x) 嚴格的安全性需求,CLR 資料庫元件會繼續使用 CLR 2.0 版中定義的代碼存取安全性模型。

  • 在 CLR 版本 4 中,System.TimeSpan 值的格式錯誤將會產生 System.FormatExceptions。 在 CLR 的版本 4 之前,System.TimeSpan 值的格式錯誤會被忽略。 依賴 CLR 版本 4 之前行為的資料庫應用程式應該要以資料庫相容性層級 (ALTER DATABASE Compatibility Level) 100 或更低的層級來執行。 如需詳細資訊,請參閱< TimeSpan_LegacyFormatMode > 元素

  • 版本 4 的 CLR 支援 Unicode 5.1。 涉及一些腔調字標記和符號的排序作業將得以改善。 如果您的應用程式依賴舊版的排序行為,可能會發生相容性問題。 若要啟用舊版排序,資料庫相容性層級 (ALTER DATABASE Compatibility Level) 必須設定為 100 或更低的值。 為了支援此功能,SQL Server 2012 (11.x) 將會在 .NET Framework 4 目錄中安裝 sort00001000.dll (C:\Windows\Microsoft.NET\Framework\v4.0.30319) 。 如需詳細資訊,請參閱< CompatSortNLSVersion > 元素

  • 下列資料行已新增至 sys.dm_clr_appdomainstotal_processor_time_mstotal_allocated_memory_kbsurvived_memory_kb