sp_kill_filestream_non_transacted_handles (Transact-SQL)

適用対象:SQL Server

FileTable データへの非トランザクション ファイル ハンドルを閉じます。

Transact-SQL 構文表記規則

構文

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

引数

[ @table_name = ] 'table_name'

非トランザクション ハンドルを閉じるテーブルの名前。

handle_idを使用せずにtable_nameを渡して、FileTable の開いている非トランザクション ハンドルをすべて閉じることができます。

table_nameの値に NULL を渡すと、現在のデータベース内のすべての FileTable に対して開いているすべての非トランザクション ハンドルを閉じることができます。 NULL は既定値です。

[ @handle_id = ] handle_id

閉じる個々のハンドルのオプションの ID です。 handle_idは、sys.dm_filestream_non_transacted_handles (Transact-SQL) 動的管理ビューから取得できます。 各 ID は、SQL Server インスタンス内で一意です。 handle_idを指定する場合は、table_nameの値も指定する必要があります。

handle_idの値に NULL を渡して、table_name指定された FileTable に対して開いているすべての非トランザクション ハンドルを閉じることができます。 NULL は既定値です。

リターン コードの値

0 (成功) または 1 (失敗)。

結果セット

ありません。

解説

必要なhandle_idは、他killのコマンドで使用される作業単位とは関係session_idありません。sp_kill_filestream_non_transacted_handles

詳細については、「 FileTable の管理」を参照してください。

Metadata

開いている非トランザクション ファイル ハンドルの詳細については、動的管理ビュー sys.dm_filestream_non_transacted_handles (Transact-SQL) に対してクエリを実行します。

アクセス許可

動的管理ビューからファイル ハンドルを取得して実行sp_kill_filestream_non_transacted_handlesするには、VIEW DATABA Standard Edition STATE 権限がsys.dm_filestream_non_transacted_handles必要です。

次の例は、FileTable データの非トランザクション ファイル ハンドルを閉じる呼び出し sp_kill_filestream_non_transacted_handles 方法を示しています。

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

次の例は、スクリプトを使用してhandle_id取得して閉じる方法を示しています。

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