srv_getbindtoken(확장 저장 프로시저 API)
적용 대상: SQL Server
Important
SQL Server의 이후 버전에서는 이 기능이 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 애플리케이션은 수정하세요. 대신 CLR 통합을 사용합니다.
확장 저장 프로시저를 호출하는 현재 클라이언트 세션에서 트랜잭션의 바인딩 토큰을 가져옵니다.
바인드 토큰을 가져오면 확장 저장 프로시저는 sp_bindsession을 사용하여 같은 서버에 대해 새로 만드는 모든 세션을 기존 트랜잭션에 바인딩할 수 있습니다. 이렇게 하면 새 세션은 확장 저장 프로시저를 호출한 클라이언트 세션과 동일한 트랜잭션 잠금 공간을 공유할 수 있습니다.
구문
int srv_getbindtoken (
SRV_PROC*
srvproc
,
char*
bindtoken
);
인수
srvproc
특정 클라이언트 연결에 대한 핸들인 SRV_PROC 구조체에 대한 포인터입니다. 이 구조에는 확장 저장 프로시저 API 라이브러리가 애플리케이션과 클라이언트 간 통신 및 데이터를 관리하는 데 사용하는 모든 정보가 들어 있습니다.
bindtoken
바인딩 토큰이 복사되는 버퍼에 대한 포인터입니다. 바인딩 토큰은 null로 끝나는 문자열로 표시됩니다. 지정한 버퍼의 길이는 255바이트 이상이어야 합니다.
반품
SUCCEED 또는 FAIL
설명
확장 저장 프로시저 세션을 호출한 클라이언트 세션에 바인딩하여 동일한 트랜잭션 잠금 공간을 공유하려면
확장 저장 프로시저는 세션의 현재 트랜잭션에 대한 바인딩 토큰을 가져오기 위해 srv_getbindtoken 호출합니다. 토큰은 지정된 bindtoken 매개 변수로 반환됩니다.
확장 저장 프로시저는 동일한 서버에 대해 새 세션을 엽니다. 해당 세션 내에서 확장 저장 프로시저는 sp_bindsession 바인딩 토큰을 사용하여 새 세션을 동일한 트랜잭션에 바인딩합니다. 확장 저장 프로시저는 여러 세션을 만들고 모든 세션을 동일한 트랜잭션에 바인딩할 수 있습니다.
외부 저장 프로시저가 반환되거나 빈 문자열을 사용하여 sp_bindsession 호출될 때 바인딩된 세션은 바인딩되지 않습니다.
참고 항목
한 번에 하나의 바인딩된 세션만 공유 연결에 액세스할 수 있습니다. 한 세션이 현재 서버에서 문을 실행하고 있거나 서버에서 보류 중인 결과가 있는 경우 현재 세션이 현재 문 실행을 완료할 때까지 동일한 바인딩된 연결을 공유하는 다른 세션은 서버에 액세스할 수 없습니다. 서버가 사용 중일 때 세션이 연결에 액세스하려고 하면 연결이 사용 중이며 세션이 나중에 다시 시도해야 함을 나타내는 충돌하는 세션에 오류가 반환됩니다.
Important
확장 저장 프로시저의 소스 코드를 철저히 검토해야 하며, 프로덕션 서버에 설치하기 전에 컴파일된 DLL을 테스트해야 합니다. 보안 검토 및 테스트에 대한 자세한 내용은 이 Microsoft 웹 사이트를 참조하세요.
참고 항목
sp_bindsession (Transact-SQL)
sp_getbindtoken (Transact-SQL)