轻量级池会禁用内置 CLR 工具吗?

Pau*_*ite 7 sql-server t-sql sql-clr format sql-server-2017

以纤程模式(轻量级池)运行 SQL Server会禁用 SQL CLR:

轻量级池不支持公共语言运行时 (CLR) 执行。禁用以下两个选项之一:“启用 clr”或“轻量级池化”。依赖 CLR 且在光纤模式下无法正常工作的功能包括层次结构数据类型、复制和基于策略的管理。

在另一方面,禁用SQL CLR单独(无实现了轻型池)并没有禁用内置的CLR类型,如geometry,和geography(虽然hierarchyid上面提到的),如图哪有“HIERARCHYID”类型的工作时,“CLR”被禁用?

现在一些新的语言特性依赖于CLR,例如FORMAT功能

FORMAT 依赖于 .NET Framework 公共语言运行时 (CLR) 的存在。

在光纤模式下运行 SQL Server 是否禁用该FORMAT功能和/或使用 CLR 类型?

Pau*_*ite 9

是的。

在光纤模式下运行时,所有需要 CLR 的东西都不可用。

例如,两者:

SELECT FORMAT(GETDATE(), N'd', N'en-us');
Run Code Online (Sandbox Code Playgroud)

和:

DECLARE @g geometry;
SELECT @g;
Run Code Online (Sandbox Code Playgroud)

...返回(略有误导性)错误消息:


轻量级池不支持消息 5846,级别 16,状态 2,第 13 行公共语言运行时 (CLR) 执行。
禁用以下两个选项之一:“启用 clr”或“轻量级池化”。

问题在于轻量级池,该clr enabled选项的任何设置都不允许在轻量级池下执行任何类型的 CLR。


归档时间:

查看次数:

1434 次

最近记录:

7 年,4 月 前