srv_parammaxlen (API Stored procedure estesa)
Si applica a: SQL Server
Importante
Questa funzionalità verrà rimossa nelle versioni future di SQL Server. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Usare invece l'integrazione CLR.
Restituisce la lunghezza massima dei dati di un parametro di chiamata a una stored procedure remota. Questa funzione è stata sostituita dalla funzione srv_paraminfo.
Sintassi
int srv_parammaxlen (
SRV_PROC *
srvproc
,
int
n
);
Argomenti
srvproc
Puntatore alla struttura SRV_PROC che rappresenta l'handle di una determinata connessione client. In questo caso, l'handle che ha ricevuto la chiamata alla stored procedure remota. La struttura contiene informazioni utilizzate dalla libreria dell'API Stored procedure estesa per gestire le comunicazioni e i dati tra l'applicazione e il client.
n
Indica il numero del parametro. Il primo parametro è 1.
Valori restituiti
Lunghezza massima in byte dei dati del parametro. Se non è presente nessun parametro n o nessuna stored procedure remota, restituisce -1.
Questa funzione restituisce i valori seguenti, se il parametro è uno dei tipi di dati di Microsoft SQL Server seguenti.
Nuovi tipi di dati | Lunghezza dei dati di input |
---|---|
BITN | NULL: 1 ZERO: 1 >=255: N/A <255: N/D |
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 |
Osservazioni:
Ogni parametro di stored procedure remota ha una lunghezza massima e una lunghezza effettiva dei dati. Per i tipi di dati a lunghezza fissa standard che non consentono valori Null, le due lunghezze coincidono. Per i tipi di dati a lunghezza variabile, le lunghezze possono essere diverse. Un parametro dichiarato come varchar(30) può ad esempio contenere dati con lunghezza pari a 10 byte. La lunghezza effettiva del parametro è 10, mentre la lunghezza massima è 30. La funzione srv_parammaxlen ottiene la lunghezza massima dei dati di una stored procedure remota. Per ottenere la lunghezza effettiva di un parametro, usare srv_paramlen.
Quando viene effettuata una chiamata a una stored procedure remota con parametri, tali parametri possono essere passati per nome o per posizione (senza nome). Se invece viene effettuata con alcuni parametri passati per nome e altri passati per posizione, si verifica un errore. Il gestore SRV_RPC viene comunque chiamato, ma risulta che non sono presenti parametri e srv_rpcparams restituisce 0.
Importante
È necessario esaminare con attenzione il codice sorgente delle stored procedure estese e testare le DLL compilate prima di installarle in un server di produzione. Per informazioni sui test e sull'analisi della sicurezza, visitare questo sito Web Microsoft.
Vedi anche
srv_paraminfo (API Stored procedure estesa)
srv_rpcparams (API Stored procedure estesa)