SQL Server 2008 - Jak łatwo sprawdzić, czy włączona jest funkcja CLR?
Odpowiedzi:
Sprawdź config_value
w wynikachsp_configure
Możesz włączyć CLR, uruchamiając następujące polecenie:
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'clr enabled', 1;
GO
RECONFIGURE;
GO
was 0 now 1
lub coś podobnego, ale ...
Przyjęta odpowiedź wymaga niewielkiego wyjaśnienia. Wiersz będzie tam, jeśli CLR jest włączony lub wyłączony. Wartość będzie 1, jeśli jest włączona, lub 0, jeśli jest wyłączona.
Używam tego skryptu, aby włączyć na serwerze, jeśli opcja jest wyłączona:
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
select *
from sys.configurations
where name = 'clr enabled'
Poprawny wynik dla mnie z 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;
To jest odpowiedź @ Jason, ale z uproszczonym wyjściem
SELECT name, CASE WHEN value = 1 THEN 'YES' ELSE 'NO' END AS 'Enabled'
FROM sys.configurations WHERE name = 'clr enabled'
Powyższe zwraca co następuje:
| name | Enabled |
-------------------------
| clr enabled | YES |
Testowane na SQL Server 2017