sp_kill_filestream_non_transacted_handles(Transact-SQL)
적용 대상: SQL Server
FileTable 데이터에 대한 비트랜잭션 파일 핸들을 닫습니다.
구문
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입니다. sys.dm_filestream_non_transacted_handles 동적 관리 보기에서 handle_id 가져올 수 있습니다. 각 ID는 SQL Server 인스턴스에서 고유합니다. handle_id 지정하는 경우 table_name 값도 제공해야 합니다.
handle_id 값을 전달 NULL
하여 table_name 지정한 FileTable에 대해 열려 있는 모든 비정상 핸들을 닫을 수 있습니다. 기본값은 NULL
입니다.
반환 코드 값
0
(성공) 또는 1
(실패).
결과 집합
없음.
설명
필요한 sp_kill_filestream_non_transacted_handles
handle_id 다른 kill
명령에 사용되는 작업 단위 또는 단위와 관련이 session_id
없습니다.
자세한 내용은 FileTables 관리를 참조하세요.
메타데이터
열려 있는 비트랜잭션 파일 핸들에 대한 자세한 내용은 동적 관리 뷰 sys.dm_filestream_non_transacted_handles 쿼리합니다.
사용 권한
동적 관리 뷰에서 sys.dm_filestream_non_transacted_handles
파일 핸들을 가져오고 실행 sp_kill_filestream_non_transacted_handles
하려면 VIEW DATABASE STATE 권한이 있어야 합니다.
예제
다음 예제에서는 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