Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Chiude gli handle di file non transazionali ai dati della tabella FileTable.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
sys.sp_kill_filestream_non_transacted_handles
[ [ @table_name = ] N'table_name' ]
[ , [ @handle_id = ] handle_id ]
[ ; ]
Argomenti
[ @table_name = ] N'table_name'
Nome della tabella in cui chiudere handle non transazionali.
Puoi passare @table_name senza @handle_id di chiudere tutti i handle non transazionali aperti per la FileTable.
Puoi fare passare NULL per il valore di @table_name chiudere tutti i handle non transazionali aperti per tutte le FileTable nel database corrente.
NULL è il valore predefinito.
[ @handle_id = ] handle_id
ID facoltativo del singolo handle da chiudere. Puoi ottenere il @handle_id dalla vista di gestione dinamica sys.dm_filestream_non_transacted_handles . Ogni ID è univoco in un'istanza di SQL Server. Se specifichi @handle_id, allora devi anche fornire un valore per @table_name.
Puoi passare NULL per il valore di @handle_id per chiudere tutti i handle non transazionali aperti per il FileTable specificato da @table_name.
NULL è il valore predefinito.
Valori del codice restituito
0 (esito positivo) o 1 (errore).
Set di risultati
Nessuno.
Osservazioni:
Il
Per altre informazioni, vedere Gestire le tabelle FileTable.
Metadati UFX
Per informazioni sugli handle di file non transazionali aperti, eseguire una query sulla vista a gestione dinamica sys.dm_filestream_non_transacted_handles.
Autorizzazioni
Devi avere VIEWDATABASE il permesso STATE per ottenere i file handles dalla sys.dm_filestream_non_transacted_handles vista di gestione dinamica e per eseguire sp_kill_filestream_non_transacted_handles.
Esempi
Negli esempi seguenti viene illustrato come chiamare sp_kill_filestream_non_transacted_handles per chiudere gli handle di file non transazionali per i dati 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;
Nell'esempio seguente viene illustrato come usare uno script per ottenere un handle_id e chiuderlo.
DECLARE @handle_id AS VARBINARY (16);
DECLARE @table_name AS SYSNAME;
SELECT TOP 1 @handle_id = handle_id,
@table_name = Object_name(table_id)
FROM sys.dm_FILESTREAM_non_transacted_handles;
EXECUTE sp_kill_filestream_non_transacted_handles
@dbname,
@table_name,
@handle_id;
GO