Compartir vía


sp_kill_filestream_non_transacted_handles (Transact-SQL)

Se aplica a: SQL Server

Cierra los identificadores de archivo no transaccionales a los datos de FileTable.

Convenciones de sintaxis de Transact-SQL

Sintaxis

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

Argumentos

[ @table_name = ] 'table_name'

Nombre de la tabla en la que se cierran los identificadores no transaccionales.

Puede pasar table_name sin handle_id para cerrar todos los identificadores no transaccionales abiertos para FileTable.

Puede pasar NULL el valor de table_name para cerrar todos los identificadores no transaccionales abiertos para todas las FileTables de la base de datos actual. El valor predeterminado es NULL.

[ @handle_id = ] handle_id

El Id. opcional del identificador individual que se cerrará. Puede obtener el handle_id desde la vista de administración dinámica de sys.dm_filestream_non_transacted_handles. Cada identificador es único en una instancia de SQL Server. Si especifica handle_id, también debe proporcionar un valor para table_name.

Puede pasar NULL para que el valor de handle_id cierre todos los identificadores no transaccionales abiertos para la FileTable especificada por table_name. El valor predeterminado es NULL.

Valores de código de retorno

0 (correcto) o 1 (erróneo).

Conjunto de resultados

Ninguno.

Comentarios

El handle_id requerido por sp_kill_filestream_non_transacted_handles no está relacionado con la session_id unidad de trabajo o que se usa en otros kill comandos.

Para obtener más información, vea Administrar FileTables.

Metadatos

Para obtener información sobre los identificadores de archivo no transaccionales abiertos, consulte la vista de administración dinámica sys.dm_filestream_non_transacted_handles.

Permisos

Debe tener el permiso VIEW DATABASE STATE para obtener identificadores de archivo de la sys.dm_filestream_non_transacted_handles vista de administración dinámica y para ejecutar sp_kill_filestream_non_transacted_handles.

Ejemplos

En los ejemplos siguientes se muestra cómo llamar sp_kill_filestream_non_transacted_handles a para cerrar identificadores de archivo no transaccionales para los datos 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;

En el ejemplo siguiente se muestra cómo usar un script para obtener un handle_id y cerrarlo.

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