sys.dm_clr_properties (Transact-SQL)
S’applique à : SQL Server Azure SQL Managed Instance Analytics Platform System (PDW)
Retourne une ligne pour chaque propriété liée à l’intégration clR (Common Language Runtime) SQL Server, y compris la version et l’état du CLR hébergé. Le CLR hébergé est initialisé en exécutant les instructions CREATE ASSEMBLY, ALTER ASSEMBLY ou DROP ASSEMBLY, ou en exécutant n’importe quelle routine, type ou déclencheur CLR. La vue sys.dm_clr_properties ne spécifie pas si l’exécution du code CLR utilisateur a été activée sur le serveur. L’exécution du code CLR utilisateur est activée à l’aide de la procédure stockée sp_configure avec l’option clr activée sur 1.
La vue sys.dm_clr_properties contient les colonnes nom et valeur . Chaque ligne de cette vue fournit des détails sur une propriété du CLR hébergé. Utilisez cette vue pour recueillir des informations sur le CLR hébergé, telles que le répertoire d'installation du CLR, sa version ou encore son état actuel. Cette vue peut vous aider à déterminer que le code d'intégration CLR ne fonctionne pas en raison de problèmes d'installation du CLR sur le serveur.
Nom de la colonne | Type de données | Description |
---|---|---|
nom | nvarchar(128) | Nom de la propriété. |
value | nvarchar(128) | Valeur de la propriété. |
Propriétés
La propriété de répertoire indique le répertoire sur lequel le .NET Framework a été installé sur le serveur. Il peut y avoir plusieurs installations de .NET Framework sur l’ordinateur serveur et la valeur de cette propriété identifie l’installation que SQL Server utilise.
La propriété version indique la version du .NET Framework et le CLR hébergé sur le serveur.
L’sys.dm_clr_properties vue managée dynamique peut retourner six valeurs différentes pour la propriété d’état, qui reflète l’état du CLR hébergé par SQL Server. Il s'agit de :
Mscoree is not loaded.
Mscoree is loaded.
Locked CLR version with mscoree.
CLR is initialized.
CLR initialization permanently failed.
CLR is stopped.
Le Mscoree n’est pas chargé et les états Mscoree sont chargés indiquent la progression de l’initialisation CLR hébergée au démarrage du serveur et ne sont probablement pas visibles.
La version CLR verrouillée avec l’état mscoree peut être vue où le CLR hébergé n’est pas utilisé et, par conséquent, il n’a pas encore été initialisé. Le CLR hébergé est initialisé la première fois qu’une instruction DDL (telle que CREATE ASSEMBLY (Transact-SQL)) ou un objet de base de données managée est exécuté.
L’état CLR est initialisé indique que le CLR hébergé a été initialisé avec succès. Cela n'indique pas si l'exécution de code CLR utilisateur a été activée. Si l’exécution du code CLR utilisateur est d’abord activée et désactivée à l’aide de la procédure stockée Transact-SQL sp_configure , la valeur d’état est toujours initialisée.
L’état d’échec de l’initialisation CLR indique que l’initialisation CLR hébergée a échoué. La pression de la mémoire est une cause probable, ou elle peut également être le résultat d’une défaillance dans l’établissement d’une liaison d’hébergement entre SQL Server et le CLR. Si tel est le cas, le message d'erreur 6512 ou 6513 est déclenché.
L’état clR est arrêté uniquement lorsque SQL Server est en cours d’arrêt.
Notes
Les propriétés et les valeurs de cette vue peuvent changer dans une version ultérieure de SQL Server en raison d’améliorations de la fonctionnalité d’intégration clR.
autorisations
Sur SQL Server et SQL Managed Instance, l’autorisation VIEW SERVER STATE
est requise.
Sur les objectifs de service SQL Database Basic, S0 et S1, et pour les bases de données dans des pools élastiques, le compte d’administrateur du serveur, le compte d’administrateur Microsoft Entra ou l’appartenance au ##MS_ServerStateReader##
rôle serveur est requis. Sur tous les autres objectifs de service SQL Database, l’autorisation VIEW DATABASE STATE
sur la base de données ou l’appartenance au rôle serveur ##MS_ServerStateReader##
est requise.
Autorisations pour SQL Server 2022 (et versions plus récentes)
Nécessite l’autorisation VIEW SERVER PERFORMANCE STATE sur le serveur.
Exemples
L'exemple suivant récupère des informations sur le CLR hébergé :
SELECT name, value
FROM sys.dm_clr_properties;
Voir aussi
Fonctions et vues de gestion dynamique (Transact-SQL)
Vues de gestion dynamique liées au Common Language Runtime (Transact-SQL)