sp_kill_filestream_non_transacted_handles (Transact-SQL)
Ferme des descripteurs de fichiers non transactionnels aux données de FileTable.
S'applique à : SQL Server (SQL Server 2012 via la version actuelle). |
Syntaxe
sp_kill_filestream_non_transacted_handles [[ @table_name = ] ‘table_name’, [[ @handle_id = ] @handle_id]]
Arguments
table_name
Nom de la table dans laquelle fermer des descripteurs non transactionnels.Vous pouvez passer table_name sans handle_id pour fermer tous les descripteurs non transactionnels ouverts pour le FileTable.
Vous pouvez passer NULL pour la valeur de table_name afin de fermer tous les descripteurs non transactionnels ouverts pour tous les FileTables de la base de données actuelle. La valeur par défaut est NULL.
handle_id
ID facultatif du descripteur individuel à fermer. Vous pouvez obtenir l'handle_id de la vue de gestion dynamique sys.dm_filestream_non_transacted_handles (Transact-SQL). Chaque ID est unique dans une instance SQL Server. Si vous spécifiez handle_id, vous devez également fournir une valeur pour table_name.Vous pouvez passer NULL pour la valeur d'handle_id afin de fermer tous les descripteurs non transactionnels ouverts pour le FileTable spécifié par table_name. La valeur par défaut est NULL.
Valeur des codes de retour
0 (succès) ou 1 (échec)
Jeu de résultats
Aucun.
Remarques d'ordre général
handle_id requis par sp_kill_filestream_non_transacted_handles ne se rapporte pas à session_id ni à l'unité de travail utilisée dans d'autres commandes kill.
Pour plus d'informations, consultez Gérer des FileTables.
Métadonnées
Pour plus d'informations sur les descripteurs de fichiers non transactionnels ouverts, interrogez la vue de gestion dynamique sys.dm_filestream_non_transacted_handles (Transact-SQL).
Sécurité
Autorisations
Vous devez disposer de l'autorisation VIEW DATABASE STATE pour obtenir des descripteurs de fichiers de la vue de gestion dynamique sys.dm_FILESTREAM_non_transacted_handles et pour exécuter sp_kill_filestream_non_transacted_handles.
Exemples
Les exemples suivants indiquent comment appeler sp_kill_filestream_non_transacted_handles pour fermer des descripteurs de fichiers non transactionnels pour les données de FileTable.
-- Close all open handles in the current database.
sp_kill_filestream_non_transacted_handles
-- Close all open handles in myFileTable.
sp_kill_filestream_non_transacted_handles @table_name = ’myFileTable’
-- Close a specific handle in myFileTable.
sp_kill_filestream_non_transacted_handles @table_name = ’myFileTable’, @handle_id = 0xFFFAAADD
L'exemple suivant indique comment utiliser un script pour obtenir un handle_id et le fermer.
DECLARE @handle_id varbinary(16);
DECLARE @table_name sysname;
SELECT TOP 1 @handle_id = handle_id, @table_name = Object_name(table_id)
FROM sys.dm_FILESTREAM_non_transacted_handles;
EXEC sp_kill_filestream_non_transacted_handles @dbname, @table_name, @handle_id;
GO