srv_parammaxlen (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 comprimento máximo de dados de um parâmetro de chamada de procedimento armazenado remoto. Esta função foi substituída pela função srv_paraminfo.
Sintaxe
int srv_parammaxlen (
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 de APIs de procedimento armazenado estendido usa para gerenciar a comunicação e os dados entre o aplicativo e o cliente.n
Indica o número do parâmetro. O primeiro parâmetro é 1.
Retorna
O comprimento máximo, em bytes, dos dados do parâmetro. Se não houver parâmetro de número n ou procedimento armazenado remoto, o valor retornado será -1.
Esta função retornará os valores a seguir, se o parâmetro for um dos seguintes tipos de dados do Microsoft SQL Server 2005:
Novos tipos de dados |
Comprimento dos dados de entrada |
---|---|
BITN |
NULL: 1 ZERO: 1 >=255: N/A <255: N/A |
BIGVARCHAR |
NULL: 255 ZERO: 255 >=255: 255 <255: 255 |
BIGCHAR |
NULL: 255 ZERO: 255 >=255: 255 <255: 255 |
BIGBINARY |
NULL: 255 ZERO: 255 >=255: 255 <255: 255 |
BIGVARBINARY |
NULL: 255 ZERO: 255 >=255: 255 <255: 255 |
NCHAR |
NULL: 255 ZERO: 255 >=255: 255 <255: 255 |
NVARCHAR |
NULL: 255 ZERO: 255 >=255: 255 <255: 255 |
NTEXT |
NULL: -1 ZERO: -1 >=255: -1 <255: -1 |
Comentários
Cada parâmetro de procedimento armazenado remoto tem um comprimento de dados real e um máximo. Para tipos de dados padrão de comprimento fixo que não permitem valores nulos, os comprimentos real e máximo são os mesmos. Para tipos de dados de comprimento de variável, os comprimentos podem variar. Por exemplo, um parâmetro declarado como varchar(30) pode ter dados de apenas 10 bytes de comprimento. O comprimento real do parâmetro é 10 e seu comprimento máximo é 30. A função srv_parammaxlen obtém o comprimento máximo de dados de um procedimento armazenado remoto. Para obter o comprimento real de um parâmetro, use srv_paramlen.
Quando uma chamada de procedimento armazenado remoto é feita com parâmetros, os parâmetros podem 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. O manipulador SRV_RPC ainda será chamado, mas aparecerá como se não houvesse parâmetros e srv_rpcparams retornará 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. |
Consulte também