Partager via


sp_kill_filestream_non_transacted_handles (Transact-SQL)

S'applique à : SQL Server

Ferme les handles de fichiers nontransactionnels aux données FileTable.

Conventions de la syntaxe Transact-SQL

Syntaxe

sp_kill_filestream_non_transacted_handles [
    [ @table_name = ] 'table_name'
    , [ [ @handle_id = ] handle_id ]
    ]

Arguments

[ @table_name = ] 'nom_table'

Nom de la table dans laquelle fermer les handles nontransactionnels.

Vous pouvez passer table_name sans handle_id pour fermer tous les handles nontransactionnels ouverts pour FileTable.

Vous pouvez passer NULL la valeur de table_name pour fermer tous les handles nontransactionnels ouverts pour tous les FileTables de la base de données active. NULL est la valeur par défaut.

[ @handle_id = ] handle_id

ID facultatif du descripteur individuel à fermer. Vous pouvez obtenir le handle_id à partir de la vue de gestion dynamique sys.dm_filestream_non_transacted_handles . 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 la valeur de handle_id pour fermer tous les handles nontransactionnels ouverts pour le FileTable spécifié par table_name. NULL est la valeur par défaut.

Valeurs des codes de retour

0 (réussite) or 1 (échec).

Jeu de résultats

Aucune.

Notes

La handle_id requise par sp_kill_filestream_non_transacted_handles n’est pas liée à l’unité session_id de travail utilisée dans d’autres kill commandes.

Pour plus d’informations, consultez Gérer des FileTables.

Métadonnées

Pour plus d’informations sur les handles de fichier nontransaction ouverts, interrogez la vue de gestion dynamique sys.dm_filestream_non_transacted_handles.

autorisations

Vous devez disposer de l’autorisation VIEW DATABASE STATE pour obtenir des handles de fichiers à partir de la sys.dm_filestream_non_transacted_handles vue de gestion dynamique et pour l’exécuter sp_kill_filestream_non_transacted_handles.

Exemples

Les exemples suivants montrent comment appeler sp_kill_filestream_non_transacted_handles pour fermer des handles de fichiers nontransactionnels pour les données 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 montre 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