sp_kill_filestream_non_transacted_handles(Transact-SQL)
FileTable 데이터에 대한 비트랜잭션 핸들 파일을 닫습니다.
적용 대상: SQL Server(SQL Server 2012 - 현재 버전). |
구문
sp_kill_filestream_non_transacted_handles [[ @table_name = ] ‘table_name’, [[ @handle_id = ] @handle_id]]
인수
table_name
비트랜잭션 핸들을 닫을 테이블의 이름입니다.handle_id를 사용하지 않고 table_name을 전달하여 FileTable에 대한 열려 있는 모든 비트랜잭션 핸들을 닫을 수 있습니다.
table_name 값으로 NULL을 전달하여 현재 데이터베이스의 모든 FileTable에 대한 열려 있는 모든 비트랜잭션 핸들을 닫을 수 있습니다. 기본값은 NULL입니다.
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(실패)
결과 집합
없음
일반적인 주의
sp_kill_filestream_non_transacted_handles에 필요한 handle_id는 다른 kill 명령에 사용되는 session_id 또는 작업 단위와 관련이 없습니다.
자세한 내용은 FileTable 관리를 참조하십시오.
메타데이터
열려 있는 비트랜잭션 파일 핸들에 대한 자세한 내용을 보려면 동적 관리 뷰 sys.dm_filestream_non_transacted_handles(Transact-SQL)를 쿼리합니다.
보안
사용 권한
sys.dm_FILESTREAM_non_transacted_handles 동적 관리 뷰에서 파일 핸들을 가져오고 sp_kill_filestream_non_transacted_handles를 실행하려면 VIEW DATABASE STATE 권한이 있어야 합니다.
예
다음 예에서는 sp_kill_filestream_non_transacted_handles를 호출하여 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
다음 예에서는 스크립트를 사용하여 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