Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server
Importante
Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em novos trabalhos de desenvolvimento e planeje modificar aplicativos que atualmente usam esse recurso. Usa antes a integração CLR.
Obtém um token de ligação da transação na sessão atual do cliente que invoca o procedimento armazenado estendido.
O procedimento armazenado estendido pode então usar sp_bindsession para vincular qualquer nova sessão que crie contra o mesmo servidor à transação existente, para que a nova sessão possa partilhar o mesmo espaço de bloqueio de transações com a sessão cliente que invocou o procedimento armazenado estendido.
Syntax
int srv_getbindtoken (
SRV_PROC*
srvproc
,
char*
bindtoken
);
Arguments
srvproc
É um apontador para a estrutura SRV_PROC que é o handler para uma ligação cliente particular. A estrutura contém toda a informação que a biblioteca da API de Procedimentos Armazenados Estendidos utiliza para gerir comunicações e dados entre a aplicação e o cliente.
bindtoken
É um apontador para um buffer onde o token de ligação será copiado. O token de ligação é representado como uma cadeia terminada por nulo. O buffer que especificas deve ter pelo menos 255 bytes de comprimento.
Devoluções
TER SUCESSO ou FALHAR.
Observações
Vincular uma sessão de procedimento armazenado estendida à sessão cliente que a chamou, de modo a partilhar o mesmo espaço de bloqueio de transações
O procedimento armazenado estendido chama-srv_getbindtoken para obter o token de ligação para a transação atual na sessão. O token é devolvido no parâmetro bindtoken dado.
O procedimento armazenado estendido abre nova(s) sessão(ões) contra o mesmo servidor. Dentro dessa sessão, o procedimento armazenado estendido usa o token de ligação com sp_bindsession para vincular a nova sessão à mesma transação. O procedimento armazenado estendido pode criar múltiplas sessões e vincular todas as sessões à mesma transação.
Uma sessão vinculada é desvinculada quando o procedimento armazenado externo retorna ou quando sp_bindsession é chamada com uma cadeia vazia.
Note
Apenas uma sessão vinculada de cada vez pode ter acesso a uma ligação partilhada. Se uma sessão estiver atualmente a executar uma instrução no servidor ou tiver resultados pendentes do servidor, nenhuma outra sessão que partilhe a mesma ligação limitada pode aceder ao servidor até que a sessão atual termine de executar a instrução atual. Se uma sessão tentar aceder à ligação enquanto o servidor está ocupado, é devolvido um erro à sessão em conflito, indicando que a ligação está em uso e que a sessão deve tentar novamente mais tarde.
Importante
Deves rever cuidadosamente o código-fonte dos procedimentos armazenados estendidos e deves testar as DLLs compiladas antes de as instalares num servidor de produção. Para informações sobre revisão e testes de segurança, consulte este site da Microsoft.