srv_paramdata (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. |
Retorna o valor de um parâmetro de chamada de procedimento armazenado remoto. Esta função foi substituída pela função srv_paraminfo.
Sintaxe
void * srv_paramdata (
SRV_PROC *
srvproc
,
int
n
);
Argumentos
srvproc
É um ponteiro para a estrutura SRV_PROC que identifica uma conexão de cliente específica (nesse caso, o identificador que recebeu a chamada do procedimento armazenado remoto). A estrutura contém informações que a biblioteca do procedimento armazenado estendido usa para gerenciar a comunicação e os dados entre o aplicativo e o cliente.n
É o número do parâmetro. O primeiro parâmetro equivale ao número 1.
Retorna
Um ponteiro para o valor do parâmetro. Se o n-ésimo parâmetro for NULL, se não houver n-nésimo parâmetro ou não houver procedimento armazenado remoto, retornará NULL. Se o valor do parâmetro for uma cadeia de caracteres, ele não pode terminar com caractere nulo. Use srv_paramlen para determinar o comprimento da cadeia de caracteres.
Esta função retornará os valores a seguir, se o parâmetro for um dos tipos de dados do Microsoft SQL Server. Os dados de ponteiro indicam se o ponteiro para o tipo de dados é válido (VP), NULL ou não aplicável (N/A) e o conteúdo dos dados apontados.
Novos tipos de dados |
Comprimento dos dados de entrada |
---|---|
BITN |
NULL: VP, NULL ZERO: VP, NULL >=255: N/A <255: N/A |
BIGVARCHAR |
NULL: NULL, N/A ZERO: VP, NULL >=255: VP, 255 caracteres <255: VP, dados |
BIGCHAR |
NULL: NULL, N/A ZERO: VP, 255 espaços >=255: VP, 255 caracteres <255: VP, dados + preenchimento (até 255) |
BIGBINARY |
NULL: NULL, N/A ZERO: VP, 255 0x00 >=255: VP, 255 bytes <255: VP, dados + preenchimento (até 255) |
BIGVARBINARY |
NULL: NULL, N/A ZERO: VP, 0x00 >=255: VP, 255 bytes <255: VP, dados |
NCHAR |
NULL: NULL, N/A ZERO: VP, 255 espaços >=255: VP, 255 caracteres <255: VP, dados + preenchimento (até 255) |
NVARCHAR |
NULL: NULL, N/A ZERO: VP, NULL >=255: VP, 255 caracteres <255: VP, dados |
NTEXT |
NULL: N/A ZERO: N/A >=255: N/A <255: N/A |
* dados não são terminados com caractere nulo; nenhuma advertência é emitida em truncamento de dados > 255 caracteres.
Comentários
Se você souber o nome do parâmetro, poderá usar srv_paramnumber para obter o número do parâmetro. Para determinar se um parâmetro é NULL, use srv_paramlen.
Quando uma chamada de procedimento armazenado remoto for feita com parâmetros, os parâmetros poderão ser passados pelo nome ou pela posição (sem nome). Se a chamada de procedimento armazenado remoto for feita com alguns parâmetros transmitidos pelo nome e outros pela posição, ocorrerá um erro. Se um ocorrer erro, o manipulador SRV_RPC ainda será chamado, mas ele aparece como se não houvesse parâmetros e srv_rpcparams retorna 0.
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. |