srv_getbindtoken (API de Procedimento Armazenado Estendido)
Importante |
---|
Esse recurso será removido em uma versão futura do Microsoft SQL Server. Não utilize esse recurso em desenvolvimentos novos e modifique, assim que possível, os aplicativos que atualmente o utilizam. Em vez disso, use a integração CLR. |
Obtém um token de associação da transação na sessão de cliente atual que invoca o procedimento armazenado estendido.
O procedimento armazenado estendido pode usar sp_bindsession para associar qualquer sessão nova que ele cria com relação ao mesmo servidor na transação existente para que a sessão nova possa compartilhar o mesmo espaço para bloqueio de transação com a sessão de cliente que invocou o procedimento armazenado estendido.
Sintaxe
int srv_getbindtoken (
SRV_PROC*
srvproc
,
char*
bindtoken
);
Argumentos
srvproc
É um ponteiro para a estrutura SRV_PROC que atua como identificador de uma conexão de cliente específica. A estrutura contém todas as informações que a biblioteca de APIs de Procedimento Armazenado Estendido usa para gerenciar as comunicações e os dados entre o aplicativo e o cliente.bindtoken
É um ponteiro para um buffer em que o token de associação será copiado. O token de associação é representado como uma cadeia de caracteres terminada por caractere nulo. O buffer que você especifica deve ter pelo menos 255 bytes.
Retorna
SUCCEED ou FAIL.
Comentários
Para associar uma sessão de procedimento armazenado estendido à sessão de cliente que a chamou para que compartilhem o mesmo espaço para bloqueio de transação
O procedimento armazenado estendido chama svr_getbindtoken para obter o token de associação para a transação atual na sessão. O token é retornado no determinado parâmetro bindtoken.
O procedimento armazenado estendido abre sessão(ões) nova(s) com relação ao mesmo servidor. Nessa sessão, o procedimento armazenado estendido usa o token de associação com sp_bindsession para associar a sessão nova à mesma transação. O procedimento armazenado estendido pode criar várias sessões e associar todas as sessões à mesma transação.
Uma sessão associada é desassociada quando o procedimento armazenado externo é retornado ou quando sp_bindsession é chamado com uma cadeia de caracteres vazia.
Observação Somente uma sessão associada por vez pode ter acesso a uma conexão compartilhada. Se uma sessão no momento estiver executando uma instrução no servidor ou tiver resultados pendentes no servidor, nenhuma outra sessão que compartilha a mesma conexão associada poderá obter acesso ao servidor enquanto a sessão atual não tiver concluído a execução da instrução atual. Se uma sessão tentar obter acesso à conexão enquanto o servidor está ocupado, será retornado um erro para a sessão conflitante indicando que a conexão está sendo usada e que a sessão deve tentar novamente mais tarde.
Observação sobre segurança |
---|
Você deve examinar cuidadosamente o código-fonte de procedimentos armazenados estendidos e testar as DLLs compiladas antes de instalá-las em um servidor de produção. Para obter informações sobre revisão e testes de segurança, consulte este site da Microsoft. |