다음을 통해 공유


sp_kill_filestream_non_transacted_handles(Transact-SQL)

FileTable 데이터에 대한 비트랜잭션 핸들 파일을 닫습니다.

구문

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

참고 항목

개념

FileTable 관리