sp_kill_filestream_non_transacted_handles (Transact-SQL)sp_kill_filestream_non_transacted_handles (Transact-SQL)

SI APPLICA A: sìSQL Server (a partire dalla versione 2008) noDatabase SQL di Azure noAzure SQL Data Warehouse noParallel Data Warehouse APPLIES TO: yesSQL Server (starting with 2008) noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Consente di chiudere handle di file non transazionali per dati di tabelle FileTable.Closes non-transactional file handles to FileTable data.

SintassiSyntax

sp_kill_filestream_non_transacted_handles [[ @table_name = ] ‘table_name’, [[ @handle_id = ] @handle_id]]  

ArgomentiArguments

table_nametable_name
Nome della tabella in cui chiudere handle non transazionali.The name of the table in which to close non-transactional handles.

È possibile passare nome_tabella senza handle_id per chiudere handle non transazionali aperti tutti per la tabella FileTable.You can pass table_name without handle_id to close all open non-transactional handles for the FileTable.

È possibile passare NULL per il valore della table_name per chiudere handle non transazionali aperti tutti per tutte le tabelle Filetable nel database corrente.You can pass NULL for the value of table_name to close all open non-transactional handles for all FileTables in the current database. Il valore predefinito è NULL.NULL is the default value.

handle_idhandle_id
ID facoltativo del singolo handle da chiudere.The optional ID of the individual handle to be closed. È possibile ottenere il handle_id dalle sys.dm_filestream_non_transacted_handles (Transact-SQL) vista a gestione dinamica.You can get the handle_id from the sys.dm_filestream_non_transacted_handles (Transact-SQL) dynamic management view. Ogni ID è univoco in un'istanza di SQL ServerSQL Server.Each ID is unique in a SQL ServerSQL Server instance. Se si specifica handle_id, quindi è necessario anche specificare un valore per table_name.If you specify handle_id, then you also have to provide a value for table_name.

È possibile passare NULL per il valore della handle_id per chiudere handle non transazionali aperti tutti per la tabella FileTable specificata da table_name.You can pass NULL for the value of handle_id to close all open non-transactional handles for the FileTable specified by table_name. Il valore predefinito è NULL.NULL is the default value.

Valore del codice restituitoReturn Code Value

0 (esito positivo) o 1 (errore)0 (success) or 1 (failure)

Set di risultatiResult Set

Nessuna.None.

Osservazioni generaliGeneral Remarks

Il handle_id richiesto dal sp_kill_filestream_non_transacted_handles non è correlato a session_id o all'unità di lavoro che viene usato in altri kill comandi.The handle_id required by sp_kill_filestream_non_transacted_handles is not related to the session_id or unit of work that is used in other kill commands.

Per altre informazioni, vedere Gestire le tabelle FileTable.For more information, see Manage FileTables.

MetadatiMetadata

Per informazioni sugli handle di file non transazionali aperti, eseguire una query nella vista a gestione dinamica sys.dm_filestream_non_transacted_handles (Transact-SQL).For information about open non-transactional file handles, query the dynamic management view sys.dm_filestream_non_transacted_handles (Transact-SQL).

SicurezzaSecurity

PermissionsPermissions

È necessario disporre VIEW DATABASE STATE dell'autorizzazione per ottenere gli handle di file dalle sys.dm_FILESTREAM_non_transacted_handles vista a gestione dinamica e l'esecuzione sp_kill_filestream_non_ transacted_handles.You must have VIEW DATABASE STATE permission to get file handles from the sys.dm_FILESTREAM_non_transacted_handles dynamic management view and to run sp_kill_filestream_non_transacted_handles.

EsempiExamples

Gli esempi seguenti illustrano come chiamare sp_kill_filestream_non_transacted_handles per chiudere handle di file non transazionali per dati di tabelle FileTable.The following examples show how to call sp_kill_filestream_non_transacted_handles to close non-transactional file handles for FileTable data.

-- 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  

Nell'esempio seguente viene illustrato come utilizzare uno script per ottenere un handle_id e chiuderlo.The following example shows how to use a script to get a handle_id and close it.

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  

Vedere ancheSee Also

Gestire tabelle FileTableManage FileTables
FileStream e viste a gestione dinamica FileTable (Transact-SQL) Filestream and FileTable Dynamic Management Views (Transact-SQL)
FileStream e viste del catalogo FileTable (Transact-SQL) Filestream and FileTable Catalog Views (Transact-SQL)
sp_filestream_force_garbage_collection (Transact-SQL)sp_filestream_force_garbage_collection (Transact-SQL)