SQL Server 2008: ¿cuál es una forma sencilla de comprobar si clr está habilitado?
Respuestas:
Consulta config_value
los resultados desp_configure
Puede habilitar CLR ejecutando lo siguiente:
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'clr enabled', 1;
GO
RECONFIGURE;
GO
was 0 now 1
, o similar, pero ...
La respuesta aceptada necesita una pequeña aclaración. La fila estará allí si CLR está habilitado o deshabilitado. El valor será 1 si está habilitado, o 0 si está deshabilitado.
Utilizo este script para habilitarlo en un servidor, si la opción está deshabilitada:
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
El resultado correcto para mí con 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;
De Se produjo un error en Microsoft .NET Framework al intentar cargar el ID de ensamblado 65675
Esta es la respuesta de @ Jason pero con una salida simplificada
SELECT name, CASE WHEN value = 1 THEN 'YES' ELSE 'NO' END AS 'Enabled'
FROM sys.configurations WHERE name = 'clr enabled'
Lo anterior devuelve lo siguiente:
| name | Enabled |
-------------------------
| clr enabled | YES |
Probado en SQL Server 2017