Partager via


sys.dm_clr_loaded_assemblies

Mis à jour : 12 décembre 2006

Retourne une ligne pour chaque assembly d'utilisateur géré chargé dans l'espace d'adressage du serveur. Utilisez cette vue pour comprendre et résoudre les objets de base de données managés d'intégration CLR qui sont en cours d'exécution dans Microsoft SQL Server.

Les assemblys sont des fichiers DLL de code managé qui sont utilisés pour définir et déployer des objets de base de données managés dans SQL Server. Dès lors qu'un utilisateur exécute un de ces objets de base de données managés, SQL Server et le CLR chargent l'assembly (et ses références) dans lequel l'objet de base de données managé est défini. L'assembly reste chargé dans SQL Server pour augmenter les performances, de sorte que les objets de base de données managés contenus dans l'assembly puissent être appelés ultérieurement, sans avoir à recharger l'assembly. L'assembly n'est pas déchargé tant que SQL Server ne présente pas une mémoire insuffisante. Pour plus d'informations sur les assemblys et l'intégration CLR, consultez CLR Hosted Environment. Pour plus d'informations sur les objets de base de données managés, consultez Building Database Objects with Common Language Runtime (CLR) Integration.

Nom de colonne Type de données Description

assembly_id

int

ID de l'assembly chargé. La colonne assembly_id peut être utilisée pour rechercher davantage d'informations sur l'assembly dans l'affichage catalogue sys.assemblies (Transact-SQL). Notez que l'affichage catalogue Transact-SQL sys.assemblies montre les assemblys uniquement dans la base de données active. La vue sqs.dm_clr_loaded_assemblies affiche tous les assemblys chargés sur le serveur.

appdomain_address

int

Adresse du domaine d'application (AppDomain) où est chargé l'assembly. Tous les assemblys appartenant à un seul utilisateur sont toujours chargés dans le même domaine d'application AppDomain. La colonne appdomain_address peut être utilisée pour rechercher davantage d'informations sur le domaine d'application AppDomain dans la vue sys.dm_clr_appdomains.

load_time

datetime

Heure à laquelle l'assembly a été chargé. Notez que l'assembly reste chargé tant que SQL Server ne présente pas une mémoire insuffisante et ne décharge pas le domaine d'application AppDomain. Vous pouvez analyser load_time pour comprendre à quelle fréquence SQL Server présente une mémoire insuffisante et décharge le domaine d'application AppDomain.

Autorisations

Nécessite l'autorisation VIEW SERVER STATE sur le serveur.

Notes

La vue dm_clr_loaded_assemblies.appdomain_address a une relation plusieurs-à-un avec dm_clr_appdomains.appdomain_address. La vue ddm_clr_loaded_assemblies.assembly_id entretient une relation un-à-plusieurs avec sys.assemblies.assembly_id.

Exemples

L'exemple suivant montre comment afficher les détails de tous les assemblys de la base de données active qui sont chargés.

select a.name, a.assembly_id, a.permission_set_desc, a.is_visible, a.create_date, l.load_time 
from sys.dm_clr_loaded_assemblies as l 
inner join sys.assemblies as a
on l.assembly_id = a.assembly_id

L'exemple suivant montre comment afficher les détails du domaine d'application AppDomain dans lequel un assembly donné est chargé.

select appdomain_id, creation_time, db_id, user_id, state
from sys.dm_clr_appdomains a
where appdomain_address = 
(select appdomain_address 
 from sys.dm_clr_loaded_assemblies
 where assembly_id = 555)

Voir aussi

Référence

Fonctions et vues de gestion dynamique
Vues de gestion dynamique CLR (Common Language Runtime)

Aide et Informations

Assistance sur SQL Server 2005

Historique des modifications

Version Historique

12 décembre 2006

Nouveau contenu :
  • Mise à jour de l'introduction et ajout d'exemples.