Share via


srv_describe (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.

Definisce il nome della colonna e i tipi di dati di origine e di destinazione per una colonna specifica in una riga.

Sintassi

  
int srv_describe (  
SRV_PROC *  
srvproc  
,  
int  
colnumber  
,  
DBCHAR *  
column_name  
,  
int  
namelen  
,  
DBINT  
desttype  
,  
DBINT  
destlen  
,  
DBINT  
srctype  
,  
DBINT  
srclen  
,  
void *  
srcdata  
);  

Argomenti

srvproc
Puntatore alla struttura SRV_PROC che rappresenta l'handle di una determinata connessione client, in questo caso il client che invia la riga. La struttura contiene tutte le informazioni utilizzate dalla libreria dell'API della stored procedure estesa per gestire le comunicazioni e i dati tra l'applicazione e il client.

colnumber
Attualmente non supportato. Le colonne devono essere descritte in ordine. Tutte le colonne devono essere descritte prima che venga chiamata srv_sendrow.

column_name
Specifica il nome della colonna a cui appartengono i dati. Questo parametro può essere NULL in quanto una colonna non deve necessariamente avere un nome.

namelen
Specifica la lunghezza, espressa in byte, di column_name. Se namelen è SRV_NULLTERM, column_name deve essere con terminazione Null.

desttype
Specifica il tipo di dati della colonna della riga di destinazione. Si tratta del tipo di dati inviato al client. È necessario specificare il tipo di dati anche se i dati sono NULL. Per altre informazioni, vedere Tipi di dati (API Stored procedure estesa).

destlen
Specifica la lunghezza, espressa in byte, dei dati da inviare al client. Per tipi di dati a lunghezza fissa che non consentono i valori Null, destlen viene ignorato. Per tipi di dati a lunghezza variabile e a lunghezza fissa che consentono i valori Null, destlen specifica la lunghezza massima dei dati di destinazione.

srctype
Specifica il tipo di dati dei dati di origine.

srclen
Specifica la lunghezza, espressa in byte, dei dati di origine. Questo valore viene ignorato per i tipi di dati a lunghezza fissa.

srcdata
Fornisce l'indirizzo dei dati di origine per una determinata colonna. Dopo essere stata chiamata, srv_sendrow cerca i dati di colnumber in srcdata. È necessario quindi non liberarlo prima di una chiamata a srv_sendrow. L'indirizzo dei dati di origine può essere modificato tra una chiamata e l'altra a srv_sendrow usando srv_setcoldata. La memoria allocata per srcdata non deve essere liberata fino a quando i dati della colonna non vengono sostituiti da un'altra chiamata a srv_setcoldata o fino alla chiamata a srv_senddone.

Se desttype è SRVDECIMAL o SRVNUMERIC, il parametro srcdata deve essere un puntatore a una struttura DBNUMERIC o DBDECIMAL con i campi della precisione e della scala della struttura già impostati sui valori desiderati. È possibile utilizzare DEFAULTPRECISION per specificare una precisione predefinita e DEFAULTSCALE per specificare una scala predefinita.

Valori restituiti

Il numero della colonna descritta. La prima colonna è la colonna 1. Se si verifica un errore, viene restituito 0.

Osservazioni:

La funzione srv_describe deve essere chiamata una volta per ogni colonna nella riga prima della prima chiamata a srv_sendrow. Le colonne di una riga possono essere descritte in qualsiasi ordine.

Per modificare il percorso e lunghezza dei dati di origine nelle righe della colonna prima dell'invio del set di risultati completo, usare rispettivamente srv_setcoldata e srv_setcollen.

Per una descrizione dei tipi di dati e delle conversioni dei tipi di dati dell'API Stored procedure estesa, vedere Tipi di dati (API Stored procedure estesa).

Se il nome della colonna nell'applicazione è in Unicode, è necessario convertirlo nella tabella codici multibyte del server prima di chiamare srv_describe. Per altre informazioni, vedere Dati Unicode e tabelle codici del server.

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_sendrow (API Stored procedure estesa)
srv_setutype (API Stored procedure estesa)
srv_setcoldata (API Stored procedure estesa)