SQL Server 2008 - 检查clr是否已启用的简单方法是什么?
答案 0 :(得分:125)
SELECT * FROM sys.configurations
WHERE name = 'clr enabled'
答案 1 :(得分:33)
检查config_value
sp_configure
您可以通过运行以下命令启用CLR:
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'clr enabled', 1;
GO
RECONFIGURE;
GO
答案 2 :(得分:26)
接受的答案需要一点澄清。如果启用或禁用CLR,该行将在那里。如果启用,则值为1;如果禁用,则值为0。
如果禁用该选项,我使用此脚本在服务器上启用:
if not exists(
SELECT value
FROM sys.configurations
WHERE name = 'clr enabled'
and value = 1
)
begin
exec sp_configure @configname=clr_enabled, @configvalue=1
reconfigure
end
答案 3 :(得分:3)
select *
from sys.configurations
where name = 'clr enabled'
答案 4 :(得分:1)
SQL Server 2017的正确结果:
USE <DATABASE>;
EXEC sp_configure 'clr enabled' ,1
GO
RECONFIGURE
GO
EXEC sp_configure 'clr enabled' -- make sure it took
GO
USE <DATABASE>
GO
EXEC sp_changedbowner 'sa'
USE <DATABASE>
GO
ALTER DATABASE <DATABASE> SET TRUSTWORTHY ON;
来自An error occurred in the Microsoft .NET Framework while trying to load assembly id 65675
答案 5 :(得分:0)
这是@Jason的答案,但输出简化了
SELECT name, CASE WHEN value = 1 THEN 'YES' ELSE 'NO' END AS 'Enabled'
FROM sys.configurations WHERE name = 'clr enabled'
以上内容返回以下内容:
| name | Enabled |
-------------------------
| clr enabled | YES |
在SQL Server 2017上测试